 :root{--navy:#075b91;--navy2:#087fa3;--ink:#202b35;--muted:#657582;--line:#d9e4e8;--paper:#fff;--soft:#f3f7f8;--gold:#079ca6;--gold-light:#b9f0ed;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff;line-height:1.65}h1,h2,h3,strong,.brand{font-family:Manrope,"DM Sans",sans-serif}a{color:inherit;text-decoration:none}.section-wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - var(--max))/2));background:rgba(255,255,255,.94);border-bottom:1px solid #edf0f4;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.brand{display:flex;gap:11px;align-items:center;font-size:15px;font-weight:800;letter-spacing:-.03em}.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:linear-gradient(135deg,#075b91,#079ca6);color:#fff;font-size:11px;letter-spacing:.02em;border-radius:4px}.nav{display:flex;align-items:center;gap:31px;font-size:12px;font-weight:700;color:#4f5f73}.nav a:not(.nav-cta):hover{color:#9b7b45}.nav-cta{padding:10px 17px;border:1px solid #cbd4df;border-radius:4px;color:var(--navy)}.menu-toggle{display:none;background:none;border:0;font-size:22px;color:var(--navy)}.hero{display:grid;grid-template-columns:1.04fr .96fr;gap:70px;align-items:center;padding-top:88px;padding-bottom:88px;min-height:590px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:#087fa3;display:flex;align-items:center;gap:11px;margin:0 0 22px}.eyebrow-line{height:1px;width:28px;background:var(--gold)}h1{font-size:clamp(44px,5.4vw,70px);line-height:1.08;letter-spacing:-.065em;color:var(--navy);margin:0 0 25px;font-weight:800}h1 span{color:#079ca6}.hero-intro{max-width:550px;color:#56677c;font-size:16px;line-height:1.85;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:46px;padding:13px 18px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--navy);color:#fff;border:1px solid var(--navy)}.button-primary:hover{background:#087fa3}.button-secondary{border:1px solid #cbd5e1;color:var(--navy);background:#fff}.hero-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#78869a;font-size:11px;margin-top:27px}.status-dot{width:7px;height:7px;background:#4d9b78;display:inline-block;border-radius:50%;margin-right:7px}.meta-divider{color:#c2cbd5}.hero-panel{position:relative;overflow:hidden;background:var(--navy);color:#fff;border-radius:5px;padding:28px 30px 22px;box-shadow:0 20px 55px #075b911a;min-height:390px}.panel-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20;padding-bottom:21px}.panel-label,.panel-foot span{font-size:9px;letter-spacing:.16em;color:#bdc9d7;font-weight:700}.panel-icon{color:var(--gold-light);font-size:20px}.panel-feature{display:grid;grid-template-columns:38px 1fr;gap:13px;padding:21px 0;border-bottom:1px solid #ffffff18;position:relative;z-index:1}.feature-number{font-size:11px;color:var(--gold-light);padding-top:4px}.panel-feature strong{font-size:14px;letter-spacing:-.02em}.panel-feature p{margin:5px 0 0;color:#b9c6d4;font-size:11px;line-height:1.7}.panel-foot{display:flex;justify-content:space-between;gap:10px;padding-top:18px;position:relative;z-index:1}.panel-foot strong{font-size:10px;color:#e8edf3}.panel-watermark{position:absolute;font-family:Manrope;font-size:230px;font-weight:800;color:#ffffff06;right:-17px;bottom:-87px;line-height:1}.trust-strip{background:#f3f7f8;border-top:1px solid #e9edf2;border-bottom:1px solid #e9edf2}.trust-items{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:22px 0;font-size:9px;letter-spacing:.12em;font-weight:700;color:#66768a}.section{padding-top:95px;padding-bottom:95px}.section-heading{margin-bottom:43px}.section-heading h2,.contact-card h2{font-size:clamp(32px,4vw,46px);line-height:1.18;letter-spacing:-.055em;color:var(--navy);margin:0;font-weight:800}.about-grid{display:grid;grid-template-columns:1fr .9fr;gap:90px}.about-lead{font-size:15px;color:#56677c;line-height:1.95;max-width:570px}.about-lead p{margin:0 0 18px}.about-facts{border-top:1px solid var(--line)}.fact{display:grid;grid-template-columns:40px 1fr;gap:13px;padding:20px 0;border-bottom:1px solid var(--line)}.fact>span{font-size:10px;color:#079ca6;font-weight:700;padding-top:4px}.fact strong{font-size:14px}.fact p{font-size:12px;color:#69798d;margin:4px 0 0;line-height:1.7}.section-muted{background:#f3f7f8}.section-subtitle{max-width:490px;color:#68788c;font-size:13px;line-height:1.8;margin:15px 0 0}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.expertise-card{background:#fff;border:1px solid #e4e9f0;padding:25px 24px 27px;min-height:230px;position:relative;transition:transform .2s,box-shadow .2s}.expertise-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #075b910a}.card-index{font-size:9px;letter-spacing:.13em;color:#087fa3;font-weight:700}.line-icon{font-size:24px;color:#079ca6;margin:20px 0 12px}.expertise-card h3{font-size:15px;letter-spacing:-.025em;margin:0 0 9px;color:var(--navy)}.expertise-card p{font-size:11px;line-height:1.8;color:#68788c;margin:0}.tools-row{margin-top:30px;padding-top:23px;border-top:1px solid #dce3ec;display:flex;align-items:center;gap:25px;flex-wrap:wrap}.tools-label{font-size:9px;letter-spacing:.13em;font-weight:700;color:#7d8999}.tool-pills{display:flex;gap:8px;flex-wrap:wrap}.tool-pills span,.tag-row span{border:1px solid #dce3ec;padding:6px 10px;border-radius:3px;font-size:10px;color:#596b80;background:#fff}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:40px}.work-heading .section-subtitle{max-width:360px;margin-bottom:5px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-card{border:1px solid #e0e6ee;background:#fff;min-width:0}.project-featured{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch}.project-image{display:block;position:relative;background:#eef2f7;overflow:hidden;min-width:0}.project-image img{display:block;width:100%;height:100%;min-height:220px;object-fit:cover;transition:transform .4s}.project-image:hover img{transform:scale(1.025)}.project-featured .project-image img{min-height:310px}.image-open{position:absolute;bottom:12px;right:12px;background:#fff;color:var(--navy);padding:7px 10px;border-radius:3px;font-size:10px;font-weight:700;box-shadow:0 4px 12px #075b9118}.project-content{padding:25px 25px 27px}.project-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:8px;letter-spacing:.12em;color:#087fa3;font-weight:700}.project-type{color:#7c899a;letter-spacing:0}.project-content h3{font-size:21px;line-height:1.3;letter-spacing:-.04em;color:var(--navy);margin:15px 0 10px}.project-content p{font-size:12px;color:#68788c;line-height:1.85;margin:0 0 18px}.tag-row{display:flex;gap:7px;flex-wrap:wrap}.tag-row span{font-size:9px;background:#f7f9fb;padding:5px 8px}.disclaimer{margin:20px 0 0;padding:13px 15px;background:#f8f9fb;border-left:2px solid var(--gold);font-size:10px;color:#718095;line-height:1.7}.disclaimer span{font-size:9px;font-weight:700;letter-spacing:.12em;color:#087fa3;margin-right:8px}.section-dark{background:var(--navy);color:#fff}.section-dark .section-heading h2{color:#fff}.eyebrow-light{color:#d6bd92}.timeline{border-top:1px solid #ffffff24}.timeline-item{display:grid;grid-template-columns:210px 1fr;gap:35px;padding:29px 0;border-bottom:1px solid #ffffff24}.timeline-date{font-size:10px;letter-spacing:.1em;color:#6ed2ce;font-weight:700;padding-top:5px}.timeline-body h3{font-size:17px;letter-spacing:-.025em;margin:0 0 5px}.timeline-company{font-size:11px;color:#aebed0;margin:0 0 14px}.timeline-body ul{padding-left:17px;margin:0;color:#d0dae5;font-size:11px;line-height:1.9}.education-block{display:grid;grid-template-columns:210px 1fr;gap:35px;margin-top:47px;padding-top:30px;border-top:1px solid #ffffff24}.education-block .eyebrow{margin-bottom:9px}.education-block h3{font-size:18px;margin:0}.education-block p{font-size:11px;color:#d0dae5;margin:0 0 15px;line-height:1.7}.education-block strong{color:#fff}.contact-section{padding-top:80px;padding-bottom:80px}.contact-card{background:#f3f7f8;border:1px solid #e4e9f0;padding:45px 50px;display:grid;grid-template-columns:1fr .65fr;gap:70px;align-items:center}.contact-card h2{font-size:42px}.contact-copy{max-width:440px;font-size:13px;color:#66778c;line-height:1.85;margin:18px 0 0}.contact-actions{display:flex;align-items:flex-start;flex-direction:column;gap:13px}.contact-actions .button{margin-bottom:5px}.contact-link{font-size:12px;color:#4e6177}.contact-link:hover{color:#087fa3}.site-footer{background:#0c1c30;color:#bdc9d7}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;font-size:10px}.brand-footer{color:#fff;font-size:13px}.brand-footer .brand-mark{background:#fff;color:var(--navy)}.footer-inner p{margin:0;color:#8fa0b4}.footer-inner>span{color:#8fa0b4}
@media(max-width:850px){.hero{gap:35px;padding-top:65px;padding-bottom:65px}.hero-panel{padding:23px}.about-grid{gap:40px}.expertise-grid{grid-template-columns:repeat(2,1fr)}.work-heading{align-items:start;flex-direction:column;gap:15px}.work-heading .section-subtitle{max-width:570px}.contact-card{gap:35px;padding:35px}.project-featured{grid-template-columns:1fr}.project-featured .project-image img{min-height:0;aspect-ratio:16/9}.timeline-item,.education-block{grid-template-columns:155px 1fr}}
@media(max-width:640px){.section-wrap{width:calc(100% - 36px)}.site-header{height:68px;padding:0 18px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:67px;left:0;right:0;padding:18px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:12px 6px}.nav-cta{text-align:center;margin-top:7px}.hero{grid-template-columns:1fr;padding-top:54px;padding-bottom:55px;gap:35px}.hero h1{font-size:48px}.hero-intro{font-size:14px}.hero-panel{min-height:0}.panel-feature{padding:17px 0}.panel-foot{flex-direction:column}.trust-items{padding:18px 0;gap:12px 20px}.trust-items span{font-size:8px}.section{padding-top:67px;padding-bottom:67px}.section-heading{margin-bottom:30px}.section-heading h2{font-size:34px}.about-grid{grid-template-columns:1fr;gap:20px}.about-lead{font-size:13px}.expertise-grid{grid-template-columns:1fr}.expertise-card{min-height:0;padding:22px}.line-icon{margin:13px 0 8px}.tools-row{align-items:flex-start;flex-direction:column;gap:12px}.project-grid{grid-template-columns:1fr;gap:17px}.project-featured{grid-column:auto;display:block}.project-featured .project-image img,.project-image img{aspect-ratio:16/9;min-height:0}.project-content{padding:21px}.project-content h3{font-size:19px}.timeline-item{grid-template-columns:1fr;gap:9px;padding:23px 0}.timeline-date{font-size:9px}.timeline-body h3{font-size:16px}.education-block{grid-template-columns:1fr;gap:17px;margin-top:32px}.contact-section{padding-top:55px;padding-bottom:55px}.contact-card{grid-template-columns:1fr;gap:28px;padding:27px 22px}.contact-card h2{font-size:35px}.footer-inner{align-items:flex-start;flex-direction:column;gap:12px;padding:23px 0}.footer-inner p{order:3}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* CV-matched blue-to-teal accents */
.hero h1 span{color:#079ca6}
.brand-mark{background:linear-gradient(135deg,#075b91,#079ca6)}
.nav-cta:hover{border-color:#079ca6;color:#075b91}
.button-primary{background:linear-gradient(110deg,#075b91,#079ca6);border-color:#087fa3}
.button-primary:hover{background:linear-gradient(110deg,#064a78,#067d88)}
.panel-icon,.feature-number,.fact>span,.line-icon,.card-index,.project-meta,.timeline-date{color:#66c9c6}
.trust-strip{background:#f3f7f8}
.section-dark{background:linear-gradient(115deg,#075b91 0%,#087fa3 62%,#079ca6 100%)}
.panel-watermark{color:#ffffff0a}
.brand-footer .brand-mark{background:#fff;color:#075b91}

/* Expanded project portfolio and interactive walkthrough */
.project-grid-expanded .project-card{display:flex;flex-direction:column}.project-grid-expanded .project-image{aspect-ratio:16/8}.project-grid-expanded .project-content{display:flex;flex-direction:column;flex:1}.project-grid-expanded .project-content .text-button{align-self:flex-start;margin-top:auto;padding-top:18px}.text-button{border:0;background:transparent;color:#087f91;font:700 11px "DM Sans",sans-serif;cursor:pointer}.text-button:hover{text-decoration:underline}.project-lab{margin-top:48px;padding:30px;background:#f3f8fa;border:1px solid #dce7ec}.lab-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:25px}.lab-heading h3{font:800 clamp(24px,3vw,34px)/1.2 Manrope,sans-serif;letter-spacing:-.045em;color:var(--navy);margin:0}.lab-heading .eyebrow{margin-bottom:12px}.lab-heading>p{max-width:460px;color:#66788b;font-size:12px;line-height:1.8;margin:0}.project-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.project-tab{padding:10px 15px;border:1px solid #d3e0e6;background:#fff;color:#536a7b;border-radius:3px;font:700 11px "DM Sans",sans-serif;cursor:pointer}.project-tab.active,.project-tab:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.lab-panel{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;background:#fff;border:1px solid #e0e8ed;padding:26px}.lab-kicker{font-size:9px;font-weight:700;letter-spacing:.14em;color:#078b91}.lab-copy h4{font:800 23px/1.3 Manrope,sans-serif;color:var(--navy);letter-spacing:-.035em;margin:12px 0}.lab-copy p,.lab-copy li{font-size:12px;line-height:1.85;color:#617487}.lab-copy ul{padding-left:18px}.lab-note{border-left:2px solid #079ca6;padding-left:12px!important;color:#07808b!important;font-size:10px!important}.lab-demo{padding:21px;background:#f5f9fb;border:1px solid #e0e8ed}.demo-title{display:flex;justify-content:space-between;gap:8px;font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--navy);margin-bottom:17px}.demo-title span{font-size:8px;color:#078b91}.lab-demo label{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;color:#52687b;margin:12px 0}.lab-demo input{width:112px;padding:9px;border:1px solid #cfdae3;border-radius:3px;background:#fff;color:var(--navy);font:600 12px "DM Sans",sans-serif}.demo-result{margin-top:18px;padding:15px;background:#e4f5f3;border:1px solid #c4e9e5;display:flex;justify-content:space-between;align-items:center;gap:10px}.demo-result span{font-size:10px;color:#426a72}.demo-result strong{font:800 20px Manrope,sans-serif;color:#087f91}.demo-footnote{font-size:9px;line-height:1.6;color:#81909e;margin:13px 0 0}.lab-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.lab-metric{padding:14px 12px;background:#f4f8fa;border:1px solid #e0e8ed}.lab-metric span{display:block;color:#718396;font-size:9px}.lab-metric strong{display:block;color:var(--navy);font:800 20px Manrope,sans-serif;margin-top:6px}.lab-callout{padding:16px;background:#e7f5f4;border-left:3px solid #079ca6;color:#37656b;font-size:11px;line-height:1.8;margin-top:18px}.lab-bars{display:grid;gap:12px;margin-top:18px}.lab-bar-row{display:grid;grid-template-columns:95px 1fr 60px;gap:10px;align-items:center;font-size:10px;color:#617487}.lab-bar-track{height:10px;background:#e6edf1;border-radius:10px;overflow:hidden}.lab-bar-fill{height:100%;background:linear-gradient(90deg,#087f91,#58c5bc);border-radius:10px}.lab-table{width:100%;border-collapse:collapse;margin-top:16px;font-size:10px}.lab-table th,.lab-table td{text-align:left;padding:10px 8px;border-bottom:1px solid #e5ebef}.lab-table th{color:#718396;font-weight:700}.lab-table td{color:#3d5366}.lab-table .positive{color:#087f91;font-weight:700}.lab-table .negative{color:#b06d54;font-weight:700}
@media(max-width:850px){.lab-heading{align-items:start;flex-direction:column;gap:12px}.lab-panel{grid-template-columns:1fr}.project-lab{padding:22px}}
@media(max-width:640px){.project-lab{padding:16px;margin-top:28px}.lab-panel{padding:16px}.project-tabs{gap:6px}.project-tab{padding:9px 10px;font-size:10px}.lab-demo{padding:14px}.lab-demo label{align-items:flex-start;flex-direction:column;gap:6px}.lab-demo input{width:100%}.demo-result{align-items:flex-start;flex-direction:column}.lab-metrics{grid-template-columns:1fr}.lab-bar-row{grid-template-columns:72px 1fr 48px}}

.panel-photo{width:112px;height:132px;object-fit:cover;object-position:center 24%;border-radius:8px;border:2px solid #ffffffb8;box-shadow:0 8px 24px #0003;flex-shrink:0}
@media(max-width:640px){.panel-photo{width:96px;height:116px}}
