@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700&display=swap";.cv-print-preview{color:#102337;background:#dfe4e7;min-height:100vh;padding:72px 24px 40px}.cv-print-toolbar{color:#fff;z-index:10;background:#102337;justify-content:space-between;align-items:center;gap:20px;padding:12px max(24px,50vw - 105mm);display:flex;position:fixed;top:0;left:0;right:0}.cv-print-toolbar a,.cv-print-toolbar button{color:#fff;cursor:pointer;background:#087bd3;border:0;border-radius:7px;padding:9px 14px;font:700 12px DM Sans,sans-serif;text-decoration:none}.cv-print-toolbar a{background:#ffffff1f}.cv-print-toolbar span{opacity:.78;font-size:11px}.cv-print-toolbar nav{gap:5px;display:flex}.cv-print-toolbar nav a{background:0 0;padding:7px 10px}.cv-print-toolbar nav a.active{background:#ffffff2e}.cv-document{width:210mm;margin:0 auto}.cv-page{box-sizing:border-box;background:#fff;min-height:297mm;padding:13mm 14mm 12mm;position:relative;overflow:hidden;box-shadow:0 16px 45px #1023372e}.cv-page+.cv-page{margin-top:24px}.cv-page:after{content:"";background:#087bd3;height:2.2mm;position:absolute;bottom:0;left:0;right:0}.cv-print-header{border-bottom:1px solid #ccd9e2;grid-template-columns:minmax(0,1fr) auto 26mm;align-items:center;gap:7mm;padding-bottom:7mm;display:grid}.cv-print-identity>p{color:#087bd3;letter-spacing:.16em;text-transform:uppercase;margin:0 0 2.5mm;font-size:7.5pt;font-weight:800}.cv-print-identity h1{letter-spacing:-.05em;margin:0;font-size:29pt;line-height:.95}.cv-print-identity h1 span{color:#087bd3}.cv-print-identity h2{color:#52677a;margin:2.5mm 0 0;font-size:9pt;font-weight:600}.cv-print-contact{flex-direction:column;align-items:flex-end;gap:1.5mm;display:flex}.cv-print-contact span{color:#42596d;white-space:nowrap;font-size:8pt}.cv-print-header img{object-fit:cover;object-position:center top;background:#f0f5f8;border-bottom:2px solid #087bd3;border-radius:50%;width:26mm;height:26mm}.cv-print-summary{border-left:2px solid #d83b01;margin:6mm 0 5mm;padding-left:4mm}.cv-print-summary p{color:#455d72;margin:0;font-size:8.6pt;line-height:1.52}.cv-print-summary p+p{margin-top:1.5mm}.cv-print-metrics{grid-template-columns:repeat(4,1fr);gap:2mm;margin-bottom:6mm;display:grid}.cv-print-metrics div{background:#eef7fc;border:1px solid #b7d8ed;border-radius:3mm;align-items:center;gap:2mm;min-height:11mm;padding:1.5mm 2.5mm;display:flex}.cv-print-metrics strong{color:#087bd3;font-size:13pt}.cv-print-metrics span{color:#334e63;letter-spacing:.05em;text-transform:uppercase;font-size:7pt;font-weight:750;line-height:1.25}.cv-print-columns{grid-template-columns:42% minmax(0,1fr);gap:8mm;display:grid}.cv-print-sidebar{border-right:1px solid #d6e0e7;padding-right:7mm}.cv-print-sidebar section+section{margin-top:5mm}.cv-print-sidebar h3,.cv-print-career>h3{color:#102337;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid #b9d4e7;margin:0 0 3mm;padding-bottom:1.5mm;font-size:9pt}.cv-print-skill-group+.cv-print-skill-group{margin-top:3.5mm}.cv-print-skill-group h4{color:#087bd3;margin:0 0 1mm;font-size:8.2pt}.cv-print-skill-group p,.cv-print-pills{color:#455d72;margin:0;font-size:7.8pt;line-height:1.55}.cv-print-skill-group p .featured{font-weight:800}.cv-print-languages{flex-wrap:wrap;align-items:baseline;gap:2mm 6mm;display:flex}.cv-print-language{align-items:baseline;gap:1.2mm;margin:0;padding-left:3mm;font-size:8pt;display:flex;position:relative}.cv-print-language:before{content:"";background:#087bd3;border-radius:50%;width:1.4mm;height:1.4mm;position:absolute;top:1.25mm;left:0}.cv-print-language strong{color:#102337}.cv-print-language span{color:#60778a;white-space:nowrap}.cv-print-education{flex-direction:column;gap:.8mm;margin:0;display:flex}.cv-print-education strong{font-size:8.5pt}.cv-print-education span{color:#526a7e;font-size:7.8pt;line-height:1.42}.cv-print-education small{color:#d83b01;font-size:7.5pt;font-weight:750}.cv-print-timeline{border-left:.5px solid #c9dce8;padding-left:3mm}.cv-print-timeline article{position:relative}.cv-print-timeline article+article{margin-top:3.2mm}.cv-print-timeline article:before{content:"";background:radial-gradient(circle,#087bd3 0 .3mm,#fff .34mm);border:.7px solid #4aa1d8;border-radius:50%;width:1.5mm;height:1.5mm;position:absolute;top:.65mm;left:-3.85mm}.cv-print-timeline time{color:#d83b01;margin-bottom:.7mm;font-size:7.2pt;font-weight:800;display:block}.cv-print-timeline header{justify-content:space-between;align-items:baseline;gap:2mm;display:flex}.cv-print-timeline article span{color:#087bd3;letter-spacing:.1em;text-transform:uppercase;font-size:6.8pt;font-weight:800}.cv-print-timeline h4{margin:0 0 .6mm;font-size:9pt;line-height:1.2}.cv-print-timeline p{color:#536b7e;margin:0;font-size:7.8pt;line-height:1.45}.cv-print-section-header{border-bottom:1px solid #cbd9e2;align-items:end;margin-bottom:7mm;padding-bottom:4mm}.cv-print-section-header h2{letter-spacing:-.04em;margin:0;font-size:24pt}.cv-print-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:4mm;display:grid}.cv-print-projects article{break-inside:avoid;border:1px solid #cad8e1;border-radius:2.5mm;flex-direction:column;min-height:48mm;padding:4mm;display:flex;position:relative}.cv-print-projects article:first-child{grid-column:1/-1;min-height:auto}.cv-page-two.continued .cv-print-projects article:first-child{grid-column:auto;min-height:48mm}.cv-print-project-tags{background:#fff;flex-wrap:nowrap;align-items:center;gap:1mm;max-width:calc(100% - 14.2mm);padding:0 1mm;display:flex;position:absolute;top:0;left:10.2mm;transform:translateY(-50%)}.cv-print-project-tags b{color:#087bd3;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border:.5px solid #a9d1ea;border-radius:2px;padding:.65mm 1mm;font-size:5.8pt;font-weight:800}.cv-print-projects article.non-dynamics .cv-print-project-tags b{color:#d83b01;border-color:#efb39f}.cv-print-project-location{color:#d83b01;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;background:#fff;padding:0 1mm;font-size:5.8pt;font-weight:800;line-height:1;position:absolute;top:0;right:2mm;transform:translateY(-50%)}.cv-print-project-top{grid-template-columns:auto minmax(0,1fr) auto;align-items:flex-start;gap:2mm;display:grid}.cv-print-project-top>span{color:#85c1e7;font-size:11pt;font-weight:800}.cv-print-projects article.non-dynamics .cv-print-project-top>span{color:#d83b017a}.cv-print-project-top time{color:#607589;white-space:nowrap;flex-direction:column;align-items:flex-end;font-size:6.4pt;font-weight:700;line-height:1.2;display:flex}.cv-print-projects h3{letter-spacing:-.025em;margin:0;font-size:11.5pt;line-height:1.18}.cv-print-projects h4{color:#49677d;letter-spacing:.045em;text-transform:uppercase;margin:1.4mm 0 2.2mm;font-size:6.6pt}.cv-print-projects article.non-dynamics h4{color:#c43a08}.cv-print-projects article>p{color:#4d6579;margin:0;font-size:8.2pt;line-height:1.48}.cv-print-project-responsibilities{color:#40596d;margin:2.2mm 0 0;padding-left:3.6mm;font-size:7.1pt;line-height:1.4}.cv-print-project-responsibilities li+li{margin-top:.8mm}.cv-print-project-meta{border-top:1px solid #dde5ea;flex-direction:column;gap:1.2mm;margin-top:auto;padding-top:2.2mm;display:flex}.cv-print-project-meta small{color:#40596d;font-size:6.8pt;font-weight:600;line-height:1.42}.cv-print-project-meta small strong{color:#087bd3;letter-spacing:.06em;text-transform:uppercase;margin-right:1.2mm;font-size:6pt;font-weight:850}.cv-print-projects article.non-dynamics .cv-print-project-meta small strong{color:#c43a08}.cv-print-tech-group{display:block}.cv-print-tech-group+.cv-print-tech-group{margin-top:.8mm}.print-status{padding:40px;font:600 16px DM Sans,sans-serif}.cv-one-page{padding:9mm 11mm}.cv-one-header{border-bottom:1px solid #cbd9e2;grid-template-columns:minmax(0,1fr) auto 21mm;align-items:center;gap:5mm;padding-bottom:4mm;display:grid}.cv-one-header p{color:#087bd3;letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.2mm;font-size:6.4pt;font-weight:800}.cv-one-header h1{letter-spacing:-.05em;margin:0;font-size:23pt;line-height:.95}.cv-one-header h1 span{color:#087bd3}.cv-one-header h2{color:#52677a;margin:1.4mm 0 0;font-size:7.4pt}.cv-one-header address{flex-direction:column;align-items:flex-end;gap:.8mm;font-size:6.2pt;font-style:normal;display:flex}.cv-one-header address span{color:#42596d;white-space:nowrap}.cv-one-header img{object-fit:cover;object-position:center top;background:#eff5f8;border-bottom:1.5px solid #087bd3;border-radius:50%;width:21mm;height:21mm}.cv-one-summary{border-left:1.5px solid #d83b01;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4mm;margin:3.5mm 0 4mm;padding-left:3mm;display:grid}.cv-one-summary>p{color:#455d72;margin:0;font-size:6.7pt;line-height:1.42}.cv-one-summary>div{background:#eef7fc;border:1px solid #bddbed;border-radius:2mm;grid-template-columns:repeat(4,auto);align-items:center;gap:.5mm 1mm;padding:1.5mm 2mm;display:grid}.cv-one-summary strong{color:#087bd3;font-size:9pt}.cv-one-summary span{color:#496174;text-transform:uppercase;font-size:5pt;font-weight:750}.cv-one-columns{grid-template-columns:31% minmax(0,1fr);gap:5mm;display:grid}.cv-one-columns>aside{border-right:1px solid #d5e0e7;padding-right:4.5mm}.cv-one-columns>aside section+section{margin-top:3.5mm}.cv-one-columns h3{color:#102337;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid #b9d4e7;margin:0 0 2mm;padding-bottom:1mm;font-size:7.5pt}.cv-one-columns aside>section>p{color:#4b6376;margin:0;font-size:5.8pt;line-height:1.42}.cv-one-skill+.cv-one-skill{margin-top:2.2mm}.cv-one-skill h4{color:#087bd3;margin:0 0 .7mm;font-size:6.2pt}.cv-one-skill p{color:#4a6276;margin:0;font-size:5.55pt;line-height:1.4}.cv-one-skill p .featured{font-weight:800}.cv-one-languages{flex-wrap:wrap;align-items:baseline;gap:1.2mm 5mm;display:flex}.cv-one-language{align-items:baseline;gap:1mm;padding-left:2.5mm;display:flex;position:relative;margin:0!important}.cv-one-language:before{content:"";background:#087bd3;border-radius:50%;width:1.2mm;height:1.2mm;position:absolute;top:1mm;left:0}.cv-one-language strong{color:#102337;font-size:7pt}.cv-one-language span{color:#60778a;white-space:nowrap;font-size:5.2pt}.cv-one-education{flex-direction:column;gap:.5mm;display:flex}.cv-one-education strong{font-size:6.4pt}.cv-one-education span{color:#526a7e;font-size:5.65pt;line-height:1.35}.cv-one-education small{color:#d83b01;font-size:5.7pt;font-weight:750}.cv-one-sidebar-timeline{border-left:.35px solid #c9dce8;padding-left:2mm}.cv-one-sidebar-timeline article{position:relative}.cv-one-sidebar-timeline article:before{content:"";background:radial-gradient(circle,#087bd3 0 .22mm,#fff .25mm);border:.55px solid #4aa1d8;border-radius:50%;width:1.1mm;height:1.1mm;position:absolute;top:.45mm;left:-2.62mm}.cv-one-sidebar-timeline article+article{margin-top:2.4mm}.cv-one-sidebar-timeline time{color:#d83b01;margin-bottom:.55mm;font-size:5.2pt;font-weight:800;display:block}.cv-one-sidebar-timeline header{justify-content:space-between;align-items:baseline;gap:1.5mm;display:flex}.cv-one-sidebar-timeline span{color:#087bd3;letter-spacing:.07em;text-transform:uppercase;font-size:4.5pt;font-weight:800}.cv-one-sidebar-timeline h4{margin:0 0 .35mm;font-size:6pt;line-height:1.15}.cv-one-sidebar-timeline p{color:#566d80;margin:0;font-size:4.9pt;line-height:1.28}.cv-one-sidebar-timeline article.education time{white-space:nowrap}.cv-one-main>section+section{margin-top:3.5mm}.cv-one-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6mm 3mm;display:grid}.cv-one-timeline article{border-left:1.5px solid #9bcce9;grid-template-columns:8mm minmax(0,1fr);gap:1.5mm;padding-left:1.7mm;display:grid}.cv-one-timeline time{color:#d83b01;font-size:5.5pt;font-weight:800}.cv-one-timeline article span{color:#087bd3;letter-spacing:.08em;text-transform:uppercase;font-size:4.8pt;font-weight:800}.cv-one-timeline h4{margin:.3mm 0;font-size:6.8pt;line-height:1.15}.cv-one-timeline p{color:#566d80;margin:0;font-size:5.35pt;line-height:1.32}.cv-one-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5mm;display:grid}.cv-one-projects article{break-inside:avoid;border:1px solid #d0dce4;border-radius:1.5mm;flex-direction:column;min-height:44mm;padding:4.3mm 3.3mm 3.3mm;display:flex;position:relative}.cv-one-projects article:first-child{grid-column:1/-1;min-height:38mm}.cv-one-projects header{justify-content:space-between;align-items:flex-start;gap:1.2mm;display:flex}.cv-one-projects header>div{align-items:baseline;gap:1.5mm;min-width:0;display:flex}.cv-one-projects header>div>span{color:#75b8e3;font-size:8pt;font-weight:800}.cv-one-projects article.non-dynamics header>div>span{color:#d83b017a}.cv-one-projects header time{color:#65798b;white-space:nowrap;flex-direction:column;flex:none;align-items:flex-end;font-size:5.8pt;font-weight:700;line-height:1.2;display:flex}.cv-one-projects h4{margin:0;font-size:8pt;line-height:1.15}.cv-one-project-tags{background:#fff;flex-wrap:nowrap;align-items:center;gap:.8mm;max-width:calc(100% - 10mm);padding:0 .8mm;display:flex;position:absolute;top:0;left:7mm;transform:translateY(-50%)}.cv-one-project-tags b{color:#087bd3;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border:.35px solid #a9d1ea;border-radius:1.5px;padding:.5mm .8mm;font-size:4.9pt;font-weight:800}.cv-one-projects article.non-dynamics .cv-one-project-tags b{color:#d83b01;border-color:#efb39f}.cv-one-projects h5{color:#49677d;letter-spacing:.035em;text-transform:uppercase;margin:1mm 0 .5mm;font-size:5.6pt;font-weight:800}.cv-one-projects article.non-dynamics h5{color:#c43a08}.cv-one-projects p{color:#4f6679;margin:0;font-size:6.9pt;line-height:1.42}.cv-one-projects small{color:#40596d;margin-top:auto;padding-top:1.9mm;font-size:5.7pt;font-weight:600;line-height:1.4;display:block}.cv-one-projects small strong{color:#087bd3;letter-spacing:.06em;text-transform:uppercase;margin-right:1mm;font-size:5pt;font-weight:850}.cv-one-projects article.non-dynamics small strong{color:#c43a08}.cv-one-tech-group{display:block}.cv-one-tech-group+.cv-one-tech-group{margin-top:.45mm}@page{margin:0;size:A4}@media print{html,body,#root{background:#fff!important;margin:0!important;padding:0!important}.cv-print-preview{background:#fff;padding:0}.cv-print-toolbar{display:none}.cv-document{width:auto;margin:0}.cv-page{box-shadow:none;page-break-after:always;height:297mm;min-height:297mm}.cv-page:last-child{page-break-after:auto}.cv-page+.cv-page{margin-top:0}}@media screen and (width<=850px){.cv-print-preview{padding-inline:12px;overflow-x:auto}.cv-print-toolbar span{display:none}}:root{color:#14201d;font-synthesis:none;text-rendering:optimizelegibility;--ink:#14201d;--paper:#f3f0e8;--acid:#b8f24b;--mint:#d8f0e5;--line:#14201d2b;background:#f3f0e8;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;margin:0}body,button,a{color:var(--ink)}button,a{font:inherit}a{text-decoration:none}button{cursor:pointer}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.site-header{z-index:10;justify-content:space-between;align-items:center;height:78px;padding:0 clamp(24px,5vw,76px);display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:-.08em;font-family:Manrope,sans-serif;font-size:1.25rem;font-weight:700}.brand span,em{color:#577c13;font-style:normal}nav{gap:clamp(22px,3vw,48px);display:flex}nav a{letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;font-weight:600}nav a:hover{opacity:.55}.menu-button{background:0 0;border:0;padding:8px;display:none}.menu-button>span:not(.sr-only){background:var(--ink);width:24px;height:1px;margin:5px;display:block}.hero{grid-template-columns:minmax(0,1.05fr) minmax(320px,.8fr);align-items:center;min-height:100vh;padding:130px clamp(24px,8vw,130px) 70px;display:grid;position:relative;overflow:hidden}.hero:before{background:var(--mint);content:"";width:51%;height:78%;position:absolute;top:8%;right:-12%;transform:rotate(-7deg)}.hero-copy{z-index:1;max-width:760px;position:relative}.eyebrow{letter-spacing:.18em;text-transform:uppercase;margin:0 0 22px;font-size:.72rem;font-weight:700}.eyebrow:before{content:"";background:var(--ink);width:28px;height:1px;margin:0 12px 4px 0;display:inline-block}h1,h2,h3{letter-spacing:-.055em;margin:0;font-family:Manrope,sans-serif}.hero h1{font-size:clamp(4.2rem,10vw,9rem);font-weight:500;line-height:.79}.hero-role{margin:42px 0 12px;font-family:Manrope;font-size:clamp(1rem,2vw,1.4rem);font-weight:600}.hero-summary{opacity:.72;max-width:600px;margin:0;line-height:1.75}.contact-links{flex-wrap:wrap;gap:8px 22px;margin-top:18px;display:flex}.contact-links a{border-bottom:1px solid var(--line);padding-bottom:3px;font-size:.78rem;font-weight:600}.contact-links a:hover{border-color:var(--ink)}.hero-actions{align-items:center;gap:28px;margin-top:34px;display:flex}.button{letter-spacing:.06em;text-transform:uppercase;border:0;padding:16px 22px;font-size:.79rem;font-weight:700;display:inline-flex}.button.primary{background:var(--ink);color:#fff}.button.text{padding-inline:0}.button.text span{margin-left:10px;font-size:1.1rem}.button.outline{border:1px solid var(--ink);background:0 0;margin:48px auto 0}.portrait-wrap{z-index:1;justify-content:center;align-self:stretch;min-height:570px;display:flex;position:relative}.portrait-wrap img{filter:saturate(.75);object-fit:contain;z-index:2;height:92%;position:absolute;bottom:0}.portrait-shape{background:var(--acid);border-radius:47% 53% 52% 48%/38% 38% 62% 62%;width:88%;height:72%;position:absolute;bottom:3%}.portrait-wrap p{text-align:right;text-transform:uppercase;z-index:3;font-size:.78rem;font-weight:600;position:absolute;bottom:1%;right:0}.portrait-wrap p span{letter-spacing:.14em;opacity:.6;font-size:.62rem;font-weight:400;display:block}.hero-index{font-family:Manrope;font-size:1.3rem;position:absolute;bottom:22px;right:5vw}.hero-index span{opacity:.45;font-size:.72rem}.section{padding:clamp(80px,11vw,160px) clamp(24px,8vw,130px);scroll-margin-top:20px}.section-heading h2{font-size:clamp(2.8rem,6vw,6.3rem);font-weight:500;line-height:.96}.section-heading.horizontal{justify-content:space-between;align-items:flex-end;display:flex}.section-heading.horizontal>p{opacity:.65;max-width:390px;line-height:1.7}.about-section em{color:var(--acid)}.about-grid{grid-template-columns:1.2fr .8fr;gap:clamp(40px,9vw,150px);display:grid}.large-copy{letter-spacing:-.03em;margin:0;font-family:Manrope;font-size:clamp(1.45rem,2.7vw,2.6rem);line-height:1.35}.facts>div{border-top:1px solid #fff3;padding:22px 0}.facts span{letter-spacing:.14em;opacity:.5;text-transform:uppercase;font-size:.65rem}.facts p{margin:8px 0 0;line-height:1.6}.facts p small{opacity:.65;margin-top:5px;font-size:.78rem;display:block}.timeline article{border-top:1px solid var(--line);grid-template-columns:70px 170px 1fr;align-items:start;gap:30px;padding:34px 0 38px;display:grid}.timeline-number{opacity:.35;font-family:Manrope}.timeline time{font-weight:600}.timeline h3{margin-bottom:10px;font-size:clamp(1.4rem,2.4vw,2.2rem)}.timeline article div>p:last-child{opacity:.68;white-space:pre-line;max-width:760px;margin:0;line-height:1.65}.timeline-type{color:#5b7d20;letter-spacing:.13em;text-transform:uppercase;margin:0 0 8px;font-size:.65rem;font-weight:700}.timeline-tabs{gap:8px;margin-bottom:30px;display:flex}.timeline-tabs button{border:1px solid var(--ink);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;background:0 0;padding:11px 16px;font:600 .76rem Manrope}.timeline-tabs button.active{background:var(--ink);color:var(--paper)}.skill-groups{grid-template-columns:repeat(3,1fr);display:grid}.skill-group{border-left:1px solid var(--line);min-width:0;padding:0 clamp(18px,2vw,34px) 20px}.skill-group:first-child{border-left:0;padding-left:0}.skill-mark{background:var(--acid);border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:28px;font-family:Manrope;font-size:.8rem;font-weight:700;display:flex}.skill-group h3{margin-bottom:26px;font-size:1.55rem}.skill-group ul{margin:0;padding:0;list-style:none}.skill-group li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.skill-group li span{font-size:.87rem}.skill-group small{opacity:.5;white-space:nowrap;font-size:.66rem}.project-type{letter-spacing:.09em;text-transform:uppercase;border:1px solid;margin-bottom:12px;padding:6px 9px;font:700 .62rem Manrope;display:inline-block}.project{border-top:1px solid var(--line);grid-template-columns:140px minmax(280px,1fr) minmax(180px,.6fr);gap:clamp(24px,5vw,80px);padding:45px 0 55px;display:grid}.project-meta{flex-direction:column;gap:45px;display:flex}.project-meta>span{opacity:.25;font-family:Manrope;font-size:2rem}.project-meta time{font-size:.75rem;font-weight:600}.project-main>p:not(.eyebrow){opacity:.7;margin:0;line-height:1.65}.responsibilities{color:#14201dad;padding-left:18px;font-size:.84rem;line-height:1.55}.tags{flex-wrap:wrap;align-content:start;gap:8px;display:flex}.tags span{border:1px solid #14201d4d;border-radius:30px;padding:7px 10px;font-size:.68rem}.credentials{border-top:1px solid var(--line)}.credentials a{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr 170px 30px;align-items:center;gap:25px;padding:28px 0;display:grid}.credentials span,.credentials small{opacity:.6;font-size:.75rem}.credentials strong{font-family:Manrope;font-size:clamp(1rem,2vw,1.35rem)}.credentials b{font-size:1.3rem}footer{background:var(--ink);color:#fff;grid-template-columns:1fr 1fr auto;align-items:end;gap:30px;padding:70px clamp(24px,8vw,130px);display:grid}footer p{opacity:.6;margin:0;font-size:.78rem;line-height:1.6}footer>a:last-child{color:#fff;text-transform:uppercase;font-size:.75rem}.status-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:30px;display:flex}.status-page h1{max-width:800px;font-size:clamp(2rem,6vw,5rem)}.status-page button{background:var(--ink);color:#fff;border:0;margin-top:20px;padding:14px 20px}.loader{border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-status{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.admin-login{flex-direction:column;justify-content:center;align-items:flex-start;max-width:620px;min-height:100vh;margin:auto;padding:40px 24px;display:flex}.admin-login .brand{margin-bottom:80px}.admin-login h1{font-size:clamp(3rem,8vw,6rem);line-height:.95}.admin-login>p:not(.eyebrow,.admin-notice){opacity:.7;max-width:500px;margin:28px 0;line-height:1.7}.admin-back{text-transform:uppercase;margin-top:35px;font-size:.75rem}.admin-shell{min-height:100vh;padding:35px clamp(20px,5vw,76px) 80px}.admin-header{justify-content:space-between;align-items:center;margin-bottom:38px;display:flex}.admin-header>div:first-child{align-items:center;gap:50px;display:flex}.admin-header .eyebrow{margin-bottom:6px}.admin-header h1{font-size:clamp(1.8rem,4vw,3rem)}.admin-account{flex-direction:column;align-items:flex-end;gap:5px;font-size:.75rem;display:flex}.admin-account a{opacity:.55;text-decoration:underline}.admin-summary{background:var(--ink);color:#fff;grid-template-columns:repeat(4,1fr);margin-bottom:22px;display:grid}.admin-summary>div{border-right:1px solid #ffffff26;flex-direction:column;padding:24px 30px;display:flex}.admin-summary strong{font-family:Manrope;font-size:1.8rem}.admin-summary span{letter-spacing:.12em;opacity:.5;text-transform:uppercase;font-size:.65rem}.admin-summary .admin-state strong{color:var(--acid);margin:6px 0;font-size:1.2rem}.admin-editor{border:1px solid var(--line);background:#fff;padding:clamp(20px,4vw,46px)}.admin-toolbar{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:22px;display:flex}.admin-toolbar h2{margin:0;font-size:1.8rem}.admin-toolbar p,.admin-danger p{opacity:.6;margin:6px 0 0;font-size:.8rem}.admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-actions input{display:none}.admin-actions .button,.admin-danger .button{padding:12px 15px}.button:disabled{cursor:not-allowed;opacity:.35}.admin-editor textarea{color:#d8f0e5;resize:vertical;tab-size:2;background:#101a18;border:0;width:100%;min-height:62vh;padding:24px;font-family:Cascadia Code,Consolas,monospace;font-size:.8rem;line-height:1.65}.admin-editor textarea:focus{outline:3px solid var(--acid);outline-offset:2px}.admin-notice{border-left:4px solid;margin:14px 0;padding:12px 16px;font-size:.82rem}.admin-notice.success{background:#e6f5dc;border-color:#5b7d20}.admin-notice.error{background:#fde7e2;border-color:#b63b28}.admin-danger{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:12px;margin-top:30px;padding-top:28px;display:grid}.admin-danger h3{margin:0}.button.danger{color:#fff;background:#8e2f23}@media (width<=980px){.hero{grid-template-columns:1fr .75fr;padding-inline:6vw}.hero h1{font-size:clamp(4rem,11vw,7rem)}.portrait-wrap{min-height:480px}.skill-groups{grid-template-columns:repeat(2,1fr);row-gap:60px}.skill-group:nth-child(3){border-left:0;padding-left:0}.project{grid-template-columns:90px 1fr}.project .tags{grid-column:2}}@media (width<=720px){.site-header{height:66px}.menu-button{z-index:12;display:block}nav{background:var(--paper);opacity:0;pointer-events:none;text-align:center;flex-direction:column;justify-content:center;padding:30px;transition:opacity .18s;position:fixed;inset:0}nav.open{opacity:1;pointer-events:auto}nav a{font-family:Manrope;font-size:2rem}.hero{flex-direction:column;padding:110px 24px 60px;display:flex}.hero:before{width:110%;height:48%;top:48%;right:-25%}.hero-copy{width:100%}.hero h1{font-size:clamp(4.1rem,21vw,7rem)}.hero h1 span{margin-left:0}.portrait-wrap{width:100%;min-height:460px}.hero-index{display:none}.section{padding-inline:24px}.section-heading.horizontal{flex-direction:column;align-items:start;gap:30px}.about-grid{grid-template-columns:1fr}.timeline article{grid-template-columns:45px 1fr;gap:12px}.timeline article>div{grid-column:2}.skill-groups{grid-template-columns:1fr}.skill-group,.skill-group:nth-child(3){border-left:0;border-top:1px solid var(--line);padding:30px 0}.project{grid-template-columns:1fr;gap:22px}.project-meta{flex-direction:row;justify-content:space-between;align-items:center;gap:20px}.project .tags{grid-column:1}.credentials a{grid-template-columns:58px 1fr 20px}.credentials small{display:none}footer{grid-template-columns:1fr;align-items:start}.admin-header,.admin-header>div:first-child,.admin-toolbar{flex-direction:column;align-items:flex-start}.admin-header>div:first-child{gap:25px}.admin-account{align-items:flex-start}.admin-summary{grid-template-columns:repeat(2,1fr)}.admin-actions{justify-content:flex-start}.admin-danger{grid-template-columns:1fr;align-items:stretch}}.cv-page{background:#fff;max-width:1240px;min-height:100vh;margin:32px auto;box-shadow:0 24px 80px #1320332e}.cv-header{color:#fff;background:#14243a;grid-template-columns:118px 1fr auto;align-items:center;gap:28px;padding:42px 52px;display:grid}.cv-header img{object-fit:cover;object-position:center top;background:#d9e0e8;border:4px solid #ffffffd9;border-radius:50%;width:112px;height:112px}.cv-kicker{color:#ef5366;letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px;font-size:.68rem;font-weight:700}.cv-header h1{color:#fff;letter-spacing:-.055em;font-size:clamp(2.55rem,5vw,4.5rem);font-weight:650;line-height:.95}.cv-role{color:#cbd5e1;margin:13px 0 0;font:500 clamp(.92rem,1.5vw,1.13rem) Manrope}.cv-contact{flex-direction:column;align-items:flex-end;gap:9px;font-size:.76rem;display:flex}.cv-contact a,.cv-contact span{color:#dbe4ee}.cv-contact a:hover{color:#fff;text-decoration:underline}.cv-layout{grid-template-columns:310px minmax(0,1fr);display:grid}.cv-sidebar{background:#f1f4f7;border-right:1px solid #d7dee7;padding:42px 34px 70px}.cv-sidebar section{border-bottom:1px solid #d3dbe5;margin-bottom:30px;padding:0 0 30px}.cv-sidebar section:last-child{border:0;margin:0}.cv-sidebar h2,.cv-main>section>h2{color:#14243a;letter-spacing:.1em;text-transform:uppercase;margin:0 0 22px;font-size:1rem;font-weight:750}.cv-sidebar h2:after,.cv-main>section>h2:after{content:"";background:#ef4056;width:34px;height:3px;margin-top:9px;display:block}.cv-sidebar h3{color:#24344a;letter-spacing:-.015em;margin:5px 0;font-size:.88rem;line-height:1.35}.cv-sidebar p,.cv-sidebar small{color:#5d6979;margin:0;font-size:.78rem;line-height:1.55}.cv-sidebar .side-date{color:#ef4056;font-size:.7rem;font-weight:700}.side-item{border-bottom:1px solid #d9e0e8;grid-template-columns:38px 1fr;gap:9px;padding:12px 0;display:grid}.side-item:last-child{border:0}.side-item span{color:#ef4056;font-size:.68rem;font-weight:700}.side-item strong{color:#39485d;font-size:.75rem;line-height:1.45}.side-item:hover strong{color:#ef4056}.language{justify-content:space-between;padding:7px 0;font-size:.8rem;display:flex}.language span{color:#687587}.side-skills{margin-bottom:23px}.side-skills:last-child{margin-bottom:0}.side-skills h3{margin-bottom:10px}.side-skills>div{flex-wrap:wrap;gap:6px;display:flex}.side-skills span{color:#465469;background:#fff;border:1px solid #cbd4de;border-radius:3px;padding:5px 7px;font-size:.65rem;line-height:1.25}.cv-main{padding:42px 48px 70px}.cv-main>section{border-bottom:1px solid #dce2e9;margin-bottom:42px;padding-bottom:42px}.cv-main>section:last-child{border:0;margin:0;padding:0}.cv-summary>p{color:#526075;margin:0;font-size:.92rem;line-height:1.75}.cv-highlights{grid-template-columns:repeat(3,1fr);gap:1px;margin-top:24px;display:grid}.cv-highlights span{color:#526075;letter-spacing:.04em;text-transform:uppercase;background:#eef2f6;flex-direction:column;padding:13px 16px;font-size:.67rem;display:flex}.cv-highlights strong{color:#14243a;letter-spacing:0;font:700 1.25rem Manrope}.career-list article{grid-template-columns:68px 1fr;gap:24px;padding:0 0 22px;display:grid;position:relative}.career-list article:before{content:"";background:#d5dce5;width:1px;position:absolute;top:6px;bottom:0;left:74px}.career-list time{color:#ef4056;padding-top:4px;font-size:.7rem;font-weight:700}.career-list article>div{padding-left:14px}.career-list h3{color:#24344a;margin:0 0 5px;font-size:1rem}.career-list p{color:#667386;margin:0;font-size:.8rem;line-height:1.55}.cv-projects .project-list{gap:20px}.cv-projects .project{box-shadow:none;border:1px solid #d5dce5;border-left:4px solid #ef4056;border-radius:3px;gap:22px;padding:26px 28px}.cv-projects .project-meta{padding-bottom:15px}.cv-projects .project-meta>span{font-size:1.05rem}.cv-projects .project-meta time{background:#e9edf2;font-size:.68rem}.cv-projects .project h3{margin:9px 0 10px;font-size:1.45rem}.cv-projects .project-main>p:not(.eyebrow){font-size:.84rem;line-height:1.6}.cv-projects .project-main .eyebrow{margin:0 0 6px;font-size:.61rem}.cv-projects .project-main h4{margin-top:20px}.cv-projects .responsibilities{font-size:.78rem}.cv-projects .technology-groups{gap:13px 20px}.cv-projects .technology-title{font-size:.82rem}.cv-projects .tags span{padding:5px 8px;font-size:.61rem}.load-more{color:#fff;letter-spacing:.07em;text-transform:uppercase;background:#14243a;border:0;border-radius:3px;margin:28px auto 0;padding:13px 18px;font-size:.72rem;font-weight:700;display:block}.load-more:hover{background:#ef4056}@media (width<=820px){.cv-page{margin:0}.cv-header{grid-template-columns:82px 1fr;padding:30px 26px}.cv-header img{width:78px;height:78px}.cv-contact{grid-column:1/-1;align-items:flex-start}.cv-layout{grid-template-columns:1fr}.cv-sidebar{border-bottom:1px solid #d7dee7;border-right:0;padding:34px 26px}.cv-main{padding:38px 26px 56px}.cv-highlights{grid-template-columns:1fr}}@media print{body{background:#fff}.cv-page{box-shadow:none;max-width:none;margin:0}.load-more{display:none}}:root{--p-navy:#0f2742;--p-blue:#1676d2;--p-teal:#19a7a0;--p-bg:#f4f7fa;--p-text:#172033;--p-muted:#637083;--p-border:#dce4ec}.portfolio{min-width:320px}.portfolio-nav{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--p-border);z-index:50;background:#fffffff0;justify-content:space-between;align-items:center;height:72px;padding:0 max(24px,50vw - 590px);display:flex;position:sticky;top:0}.portfolio-logo{color:var(--p-navy);letter-spacing:-.04em;font:800 1.05rem Manrope}.nav-download,.cta,.show-projects,.contact-section button{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;border:0;border-radius:7px;padding:12px 17px;font-size:.72rem;font-weight:750}.portfolio-hero{background:radial-gradient(circle at 83% 28%,#19a7a01f,#0000 29%),#fff;grid-template-columns:minmax(0,1fr) 360px;gap:30px 70px;padding:100px max(24px,50vw - 590px) 0;display:grid}.hero-content{max-width:760px}.portfolio-hero h1{color:var(--p-navy);font-size:clamp(4rem,8vw,7rem);font-weight:650;line-height:.8}.portfolio-hero h2{color:#314258;letter-spacing:-.025em;max-width:760px;margin:34px 0 18px;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.35}.portfolio-hero .hero-content>p:not(.section-label){color:var(--p-muted);max-width:720px;margin:0;line-height:1.75}.cta.primary{background:var(--p-blue);color:#fff}.cta.secondary{border:1px solid var(--p-border);color:var(--p-navy);background:#fff}.hero-visual{justify-content:center;align-items:center;min-height:470px;display:flex;position:relative}.photo-frame{background:#dfe8ef;border-radius:36% 36% 12px 12px;width:310px;height:390px;position:relative;overflow:hidden;box-shadow:0 30px 65px #0f27422b}.photo-frame:before{background:var(--p-teal);content:"";opacity:.24;border-radius:50%;width:290px;height:290px;position:absolute;top:70px;left:10px}.photo-frame img{object-fit:contain;z-index:1;height:96%;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.portfolio-stats{background:var(--p-navy);grid-column:1/-1;grid-template-columns:repeat(4,1fr);margin-top:65px;display:grid}.portfolio-section{max-width:1180px;margin:auto;padding:105px 0}.section-intro h2,.contact-section h2{color:var(--p-navy);font-size:clamp(2.3rem,4.5vw,4.3rem);font-weight:600;line-height:1}.profile-section{grid-template-columns:.9fr 1.1fr;gap:80px;display:grid}.experience-section{border-top:1px solid var(--p-border);grid-template-columns:.72fr 1.28fr;gap:80px;display:grid}.experience-cards article{border-left:2px solid #ccd7e2;grid-template-columns:80px 1fr;gap:25px;padding:0 0 34px 28px;display:grid;position:relative}.projects-showcase{background:#eaf0f5;max-width:none;padding-inline:max(24px,50vw - 590px)}.case-study{border:1px solid var(--p-border);background:#fff;border-radius:12px;grid-template-columns:56px 1fr;gap:28px;padding:35px 38px;transition:transform .18s,box-shadow .18s;display:grid;box-shadow:0 12px 34px #0f27420f}.case-study:hover{transform:translateY(-3px);box-shadow:0 18px 40px #0f27421a}.case-study h3{color:var(--p-navy);margin:20px 0 7px;font-size:clamp(1.65rem,2.7vw,2.45rem)}.show-projects{background:var(--p-navy);color:#fff;margin:18px auto 0}.skills-showcase{grid-template-columns:.65fr 1.35fr;gap:60px;display:grid}.credentials-section{background:#fff;max-width:none;padding-inline:max(24px,50vw - 590px)}.credential-grid>*{background:var(--p-bg);border:1px solid var(--p-border);color:inherit;border-radius:10px;padding:24px;transition:border-color .18s}.credential-grid>a:hover{border-color:var(--p-blue)}.contact-section input,.contact-section textarea{color:#fff;font:inherit;background:#ffffff12;border:1px solid #fff3;border-radius:6px;width:100%;margin-top:7px;padding:12px;display:block}.portfolio-footer span,.portfolio-footer a{color:#9fb1c3;font-size:.72rem}@media (width<=900px){.portfolio-nav nav{display:none}.portfolio-nav nav.open{background:#fff;flex-direction:column;padding:28px;display:flex;position:absolute;inset:72px 0 auto}.nav-toggle{margin-left:auto;margin-right:12px;display:block}.nav-toggle span{background:var(--p-navy);width:22px;height:2px;margin:4px;display:block}.portfolio-hero{grid-template-columns:1fr 290px}.portfolio-section,.profile-section,.experience-section,.skills-showcase{margin-inline:24px}.credential-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=680px){.nav-download{display:none}.portfolio-hero{flex-direction:column;padding-top:70px;display:flex}.portfolio-hero h1{font-size:clamp(4rem,20vw,6rem)}.hero-visual{min-height:350px}.photo-frame{width:250px;height:310px}.portfolio-stats{grid-template-columns:repeat(2,1fr);margin-inline:-24px}.profile-section,.experience-section,.skills-showcase{display:block}.profile-copy,.experience-cards,.portfolio-skill-grid{margin-top:42px}.portfolio-section{padding-block:75px}.case-study{grid-template-columns:1fr;padding:25px 21px}.case-number{display:none}.case-meta{flex-direction:column;align-items:flex-start;gap:10px}.case-columns,.portfolio-skill-grid,.credential-grid,.contact-section,.contact-section form{grid-template-columns:1fr}.contact-section label:last-of-type{grid-column:1}.languages-row,.portfolio-footer,.portfolio-footer div{flex-direction:column;align-items:flex-start;gap:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@media print{.portfolio-nav,.hero-buttons,.contact-section form,.show-projects{display:none!important}.portfolio-section,.portfolio-hero,.contact-section{padding:30px!important}.case-study{break-inside:avoid}}body{background:var(--paper);color:var(--ink)}.site-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;height:72px;padding:0 clamp(24px,6vw,104px);position:fixed}.brand{background:var(--navy);color:var(--white);letter-spacing:-.03em;border-radius:4px;padding:10px 11px;font-size:1rem}.brand span,em{color:var(--acid)}nav a{color:#334e68;letter-spacing:.1em;font-size:.72rem;position:relative}nav a:after{background:var(--teal);content:"";transform-origin:0;width:100%;height:2px;transition:transform .16s;position:absolute;bottom:-9px;left:0;transform:scaleX(0)}nav a:hover{color:var(--teal);opacity:1}nav a:hover:after{transform:scaleX(1)}.hero{background:var(--white);grid-template-columns:minmax(0,1fr) minmax(320px,.65fr);gap:clamp(40px,6vw,100px);min-height:auto;padding:150px clamp(24px,8vw,130px) 138px}.hero:before{background:linear-gradient(145deg,#e8f3f4,#d9ecee);width:35%;height:100%;top:0;right:0;transform:none}.hero-copy{max-width:780px}.eyebrow{color:var(--teal);letter-spacing:.17em;margin-bottom:18px;font-size:.67rem}.eyebrow:before{background:var(--teal);width:22px}.hero h1{color:var(--navy);letter-spacing:-.065em;font-size:clamp(3.8rem,7.4vw,7.3rem);font-weight:600;line-height:.86}.hero h1 span{color:var(--teal);margin-left:0}.hero-role{color:#243b53;margin-top:34px;font-size:clamp(1.05rem,1.7vw,1.35rem)}.hero-summary{color:var(--muted);opacity:1;max-width:680px;line-height:1.7}.contact-links{gap:8px 18px;margin-top:20px}.contact-links a{color:#486581;border:0;font-size:.76rem}.contact-links a:hover{color:var(--teal)}.hero-actions{margin-top:30px}.button{letter-spacing:.08em;border-radius:3px}.portrait-wrap{background:#dfecee;border-radius:6px;min-height:510px;overflow:hidden;box-shadow:0 24px 55px #102a4324}.portrait-wrap img{filter:saturate(.62)contrast(1.03);height:96%}.portrait-shape{background:var(--acid);opacity:.8;border-radius:50%;width:100%;height:80%;bottom:-12%}.portrait-wrap p{color:var(--white);background:#0b2135e0;padding:11px 14px;bottom:18px;right:18px}.hero-stats{background:var(--navy);color:var(--white);grid-column:1/-1;grid-template-columns:repeat(3,1fr);padding:22px clamp(24px,8vw,130px);display:grid;position:absolute;bottom:0;left:0;right:0}.hero-stats>div{border-right:1px solid #ffffff26;justify-content:center;align-items:center;gap:15px;display:flex}.hero-stats>div:last-child{border-right:0}.hero-stats strong{color:var(--acid);font:600 1.8rem Manrope}.hero-stats span{letter-spacing:.05em;text-transform:uppercase;max-width:120px;font-size:.71rem}.section{padding:clamp(78px,8vw,118px) clamp(24px,8vw,130px)}.section-heading{margin-bottom:clamp(45px,5vw,70px)}.section-heading h2{color:var(--navy);font-size:clamp(2.35rem,4.5vw,4.5rem);font-weight:600;line-height:1}.section-heading.horizontal>p{color:var(--muted);opacity:1}.about-section{background:var(--navy);color:#e6eef4}.about-section .eyebrow{color:var(--acid)}.about-section .eyebrow:before{background:var(--acid)}.about-grid{gap:clamp(45px,8vw,120px)}.about-certifications>.eyebrow{margin-bottom:12px}.about-certifications>a{color:var(--white);border-top:1px solid #ffffff26;grid-template-columns:54px 1fr 20px;align-items:center;gap:18px;padding:20px 0;display:grid}.about-certifications>a:last-child{border-bottom:1px solid #ffffff26}.about-certifications>a span{color:var(--acid);font-size:.72rem;font-weight:600}.about-certifications>a strong{font:500 clamp(.95rem,1.45vw,1.15rem)/1.4 Manrope}.about-certifications>a b{color:var(--acid);font-weight:400;transition:transform .15s}.about-certifications>a:hover strong{color:var(--acid)}.about-certifications>a:hover b{transform:translate(2px,-2px)}.facts span{color:var(--acid);opacity:1}.timeline-section{background:var(--white)}.timeline-tabs{border-bottom:1px solid var(--line);gap:26px}.timeline-tabs button{color:var(--muted);border:0;border-bottom:3px solid #0000;padding:12px 0}.timeline-tabs button.active{border-bottom-color:var(--teal);color:var(--navy);background:0 0}.timeline article{grid-template-columns:58px 190px 1fr;gap:24px;padding:28px 0 31px}.timeline-number{color:var(--teal);opacity:1}.timeline time{color:#486581;font-size:.8rem}.timeline h3{font-size:clamp(1.2rem,2vw,1.75rem)}.skill-group,.skill-group:first-child{background:var(--white);border:1px solid var(--line);border-radius:5px;padding:28px;box-shadow:0 10px 30px #102a430d}.skill-mark{background:var(--navy);color:var(--acid);border-radius:4px;width:46px;height:46px;margin-bottom:22px}.skill-group h3{color:var(--navy);min-height:48px;font-size:1.2rem}.skill-group li{padding:10px 0}.skill-group li span{color:#334e68;font-size:.81rem}.skill-group small{color:var(--teal);opacity:1;font-weight:600}.project-list{gap:22px;display:grid}.project{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:5px;grid-template-columns:110px minmax(280px,1fr) minmax(190px,.55fr);gap:clamp(22px,4vw,60px);padding:34px 36px;box-shadow:0 10px 32px #102a430e}.project-meta{gap:32px}.project-meta>span{color:var(--teal);opacity:1;font-size:1.55rem}.project-type{border:0;border-radius:3px;margin-bottom:14px}.project-type.dynamics{color:#086669;background:#dff2f1}.project-type.non-dynamics{color:#486581;background:#e9edf2}.project h3{color:var(--navy);font-size:clamp(1.55rem,2.4vw,2.25rem)}.project-main>p:not(.eyebrow),.responsibilities{color:var(--muted);opacity:1}.tags span{color:#486581;background:#f1f6f7;border:0;border-radius:3px;font-weight:500}.credentials-section{background:var(--white)}.credentials a{transition:background .15s,padding .15s}.credentials a:hover{background:#f2f7f8;padding-inline:14px}.credentials a:hover strong{color:var(--teal)}footer{background:var(--navy);padding-block:54px}footer .brand{border:1px solid #ffffff40;width:max-content}.admin-shell{background:var(--paper)}.admin-summary{background:var(--navy)}.admin-editor{border-radius:5px;box-shadow:0 12px 36px #102a4312}.admin-editor textarea{background:#0b2135}@media (width<=980px){.hero{grid-template-columns:1fr .68fr;padding-inline:6vw}.skill-groups{grid-template-columns:1fr}.skill-group:nth-child(3){border-left:1px solid var(--line);padding-left:28px}}@media (width<=720px){.site-header{height:64px}nav{background:var(--white)}.hero{gap:35px;padding:108px 24px 190px}.hero:before{width:100%;height:46%;top:auto;right:0}.hero h1{font-size:clamp(3.5rem,18vw,5.5rem)}.portrait-wrap{min-height:420px}.hero-stats{grid-template-columns:1fr;padding:16px 24px}.hero-stats>div{border-bottom:1px solid #ffffff1f;border-right:0;justify-content:flex-start;padding:6px 0}.hero-stats>div:last-child{border-bottom:0}.hero-stats strong{min-width:42px;font-size:1.25rem}.hero-stats span{max-width:none}.section-heading h2{font-size:clamp(2.3rem,11vw,3.4rem)}.timeline article{grid-template-columns:38px 1fr}.timeline-tabs{gap:18px}.skill-group,.skill-group:first-child,.skill-group:nth-child(3){border:1px solid var(--line);padding:24px}.project{padding:26px 22px}}:root{--ink:#1e293b;--paper:#eef1f5;--acid:#e84155;--mint:#edf4f8;--line:#d7dde5;--muted:#5b6778;--navy:#111c2e;--teal:#176b87;--white:#fff}body{color:var(--ink);background:#111827}.site-header,main>section,footer{max-width:1180px;margin-inline:auto}.site-header{color:#fff;background:#111c2ef7;border:0;width:min(100%,1180px);height:70px;padding:0 42px;left:50%;right:auto;transform:translate(-50%)}.site-header .brand{color:#fff;letter-spacing:.02em;background:0 0;padding:0;font-size:.92rem}.site-header nav a{color:#d7e0eb}.site-header nav a:after{background:var(--acid)}.hero{background:#fff;grid-template-columns:minmax(0,1fr) 245px;align-items:stretch;gap:52px;min-height:0;padding:132px 64px 126px;overflow:visible}.hero:before{display:none}.hero h1{color:var(--navy);font-size:clamp(3.3rem,6.7vw,5.7rem);font-weight:700;line-height:.95}.hero h1 span{color:var(--navy)}.hero-role{color:var(--acid);margin:22px 0 16px;font-size:1.28rem}.hero-summary{color:#526071;max-width:700px;font-size:.95rem;line-height:1.72}.contact-links a{color:#36465a;text-underline-offset:4px;-webkit-text-decoration:underline #c6ced8;text-decoration:underline #c6ced8}.button.primary{background:var(--acid)}.button.primary:hover{background:#c92f43}.portrait-wrap{box-shadow:0 0 0 1px var(--line);background:#e7ebf0;border:7px solid #fff;border-radius:50%;align-self:center;width:230px;height:230px;min-height:0;overflow:hidden}.portrait-wrap img{object-fit:contain;height:108%}.portrait-shape{background:#cbd5e1;border-radius:50%;width:100%;height:78%;bottom:-15%}.portrait-wrap p{display:none}.hero-stats{background:var(--navy);padding:20px 64px;bottom:0}.hero-stats strong{color:#fff;font-size:1.55rem}.hero-stats span{color:#cbd5e1}.section{background:#fff;padding:72px 64px}.section-heading{border-bottom:1px solid var(--line);margin-bottom:34px;padding-bottom:18px}.section-heading h2{color:var(--navy);letter-spacing:-.045em;font-size:clamp(2rem,3.7vw,3.15rem)}.section-heading .eyebrow{margin-bottom:8px}.about-section{color:var(--ink);background:#f5f7fa}.about-section .section-heading h2{color:var(--navy)}.about-grid{grid-template-columns:1.15fr .85fr;gap:60px}.about-certifications>a{border-color:var(--line);color:var(--ink)}.about-certifications>a:last-child{border-color:var(--line)}.about-certifications>a span,.about-certifications>a b,.about-certifications>a:hover strong{color:var(--acid)}.facts>div{border-color:var(--line)}.facts span{color:var(--teal)}.facts p{color:#465568}.timeline-section{border-top:1px solid var(--line)}.timeline article{grid-template-columns:42px 150px 1fr;padding:24px 0}.timeline-number{color:var(--acid);font-weight:700}.timeline time{color:#526071;font-weight:700}.timeline h3{color:var(--navy)}.timeline-type{color:var(--teal)}.skills-section{background:#f5f7fa}.skill-groups{gap:18px}.skill-group,.skill-group:first-child,.skill-group:nth-child(3){border:1px solid var(--line);border-top:4px solid var(--teal);box-shadow:none;background:#fff;border-radius:4px;padding:26px}.skill-mark{background:var(--navy);color:#fff}.skill-group h3{min-height:0}.skill-group small{color:#667386;font-weight:500}.projects-section{background:#e9edf2}.project-list{gap:26px}.project{border:1px solid #ccd4df;border-left:6px solid var(--acid);background:#fff;border-radius:5px;grid-template-columns:minmax(0,1fr);gap:28px;padding:32px 34px;box-shadow:0 8px 22px #0f172a12}.project-meta{border-bottom:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;gap:18px;padding-bottom:18px}.project-meta>span{color:var(--navy);font-size:1.35rem;font-weight:700}.project-meta time{color:#435064;background:#e9edf2;border-radius:20px;width:fit-content;padding:8px 12px;line-height:1.4}.project-main{min-width:0}.project-main h4{color:var(--navy);margin:24px 0 8px;font-size:.88rem}.project h3{margin-bottom:12px;font-size:clamp(1.55rem,2.4vw,2.15rem)}.responsibilities{color:#48566a;font-size:.88rem;line-height:1.6}.responsibilities li{margin-bottom:5px}.tags{gap:8px;padding-top:8px;display:flex}.tags span{color:#425166;background:#fff;border:1px solid #9eabb9;border-radius:18px;padding:6px 10px}.project-type.dynamics{background:var(--acid);color:#fff}.project-type.non-dynamics{background:var(--teal);color:#fff}.technology-groups{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 24px;padding-top:20px;display:grid}.technology-title{color:var(--navy);grid-column:1/-1;margin:0;font-weight:700}.technology-group strong{color:#334155;font-size:.78rem}footer{background:#0b1220}footer .brand{background:0 0;border:0;padding:0}@media (width<=720px){.site-header{padding-inline:24px}.site-header nav{background:var(--navy)}.site-header nav a{color:#fff}.menu-button>span:not(.sr-only){background:#fff}.hero{gap:28px;padding:108px 24px 190px}.hero-copy{order:2}.portrait-wrap{order:1;width:150px;height:150px}.hero h1{font-size:clamp(3rem,15vw,4.7rem)}.hero-stats{padding:14px 24px}.section{padding:58px 24px}.about-grid{gap:36px}.timeline article{grid-template-columns:34px 1fr}.project{grid-template-columns:1fr;padding:25px 21px}.project-meta{align-items:center}.tags{grid-column:1}.technology-groups{grid-template-columns:1fr}.technology-title{grid-column:1}}.portfolio main>section{max-width:none;margin-inline:0}.portfolio .portfolio-section{max-width:1180px;margin-inline:auto}.portfolio .projects-showcase,.portfolio .credentials-section,.portfolio .contact-section{max-width:none}.portfolio .portfolio-hero{grid-template-columns:minmax(560px,1fr) 360px;width:100%}.portfolio .hero-content{width:100%;min-width:0}.portfolio .portfolio-hero h2{width:100%;max-width:760px}@media (width<=900px){.portfolio .portfolio-section{margin-inline:24px}.portfolio .projects-showcase,.portfolio .credentials-section,.portfolio .contact-section{margin-inline:0}.portfolio .portfolio-hero{grid-template-columns:minmax(0,1fr) 290px}}@media (width<=680px){.portfolio .portfolio-hero{display:flex}}.portfolio .photo-frame{border-radius:28px;width:330px;height:330px}.portfolio .photo-frame:before{background:linear-gradient(145deg,#1676d233,#19a7a047);border-radius:50%;width:290px;height:290px;top:30px;left:20px}.portfolio .photo-frame img{object-fit:contain;width:100%;height:auto;bottom:0;left:0;transform:none}@media (width<=680px){.portfolio .photo-frame{width:270px;height:270px}.portfolio .photo-frame:before{width:230px;height:230px;left:20px}}.portfolio .case-study.featured h3{font-size:clamp(1.9rem,3vw,2.7rem)}.portfolio .case-study.early-career{box-shadow:none;background:#f9fbfc;padding-block:27px}.project-toggle{border:1px solid var(--p-border);color:var(--p-blue);background:0 0;border-radius:6px;margin-top:18px;padding:9px 12px;font-size:.7rem;font-weight:750;display:none}.additional-projects{grid-template-columns:.65fr 1.35fr;gap:55px;display:grid}.additional-meta span{color:var(--p-teal);letter-spacing:.07em;text-transform:uppercase;font-size:.63rem;font-weight:800}.additional-grid article>p:not(.case-role){color:var(--p-muted);font-size:.8rem;line-height:1.6}.additional-grid ul{color:#56657a;padding-left:18px;font-size:.75rem;line-height:1.55}.additional-grid li{margin-bottom:5px}@media (width<=900px){.additional-projects{display:block}.additional-grid{margin-top:40px}}@media (width<=680px){.portfolio .case-study .case-details{display:none}.portfolio .case-study.expanded .case-details{display:grid}.portfolio .project-toggle{display:inline-flex}.portfolio .case-study.featured,.portfolio .case-study.early-career{padding-block:25px}}body:has(.portfolio){color:#17243a;background:#f3f6f9;font-family:DM Sans,sans-serif}.portfolio{--navy:#0d2036;--blue:#176fd1;--teal:#168f8c;--text:#17243a;--muted:#637187;--border:#dce4ec;--soft:#edf3f7;--white:#fff;background:#f7f9fb;min-width:320px}.portfolio *,.portfolio :before,.portfolio :after{box-sizing:border-box}.portfolio h1,.portfolio h2,.portfolio h3,.portfolio h4{font-family:Manrope,sans-serif}.portfolio button,.portfolio input,.portfolio textarea{font:inherit}.portfolio a{text-decoration:none}.portfolio main{overflow:hidden}.portfolio main>section{max-width:none;margin:0}.portfolio-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:50;background:#fffffff0;border-bottom:1px solid #0d203617;justify-content:space-between;align-items:center;height:68px;padding:0 max(24px,50vw - 600px);display:flex;position:sticky;top:0}.portfolio-logo{color:var(--navy);font:800 1.05rem Manrope}.portfolio-logo span{color:var(--blue)}.portfolio-nav nav{gap:27px;display:flex}.portfolio-nav nav a{color:#516079;letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.portfolio-nav nav a:hover{color:var(--blue)}.nav-download,.portfolio .cta,.contact-section button{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;border:0;border-radius:7px;padding:11px 16px;font-size:.7rem;font-weight:700}.nav-download{background:var(--navy);color:#fff}.nav-toggle{background:0 0;border:0;display:none}.portfolio-hero{background:var(--navy);color:#fff;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:55px 70px;padding:92px max(24px,50vw - 600px) 0;display:grid;position:relative}.portfolio-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#176fd145,#0000 68%);width:620px;height:620px;position:absolute;top:-100px;right:-100px}.hero-content,.hero-visual{z-index:1;position:relative}.section-label{color:var(--teal);letter-spacing:.15em;text-transform:uppercase;margin:0 0 15px;font-size:.66rem;font-weight:800}.portfolio-hero .section-label{color:#67d3cf}.portfolio-hero h1{color:#fff;letter-spacing:-.065em;font-size:clamp(4rem,7.8vw,7.4rem);font-weight:650;line-height:.79}.portfolio-hero h1 span{color:#55a9f6}.portfolio-hero h2{color:#e6edf5;letter-spacing:-.02em;max-width:720px;margin:32px 0 17px;font-size:clamp(1.18rem,1.8vw,1.5rem);font-weight:500;line-height:1.42}.portfolio-hero .hero-content>p:not(.section-label){color:#aab9ca;max-width:720px;margin:0;font-size:.91rem;line-height:1.72}.hero-buttons{gap:10px;margin-top:28px;display:flex}.portfolio .cta.primary{background:var(--blue);color:#fff}.portfolio .cta.secondary{color:#fff;background:0 0;border:1px solid #ffffff40}.hero-details{flex-wrap:wrap;gap:9px 20px;margin-top:28px;display:flex}.hero-details a,.hero-details span{color:#b8c5d4;font-size:.72rem}.hero-visual{justify-content:center;align-self:stretch;align-items:flex-end;min-height:500px;display:flex}.portfolio .photo-frame{box-shadow:none;background:0 0;border-radius:0;width:390px;height:100%;min-height:500px;position:relative;overflow:hidden}.portfolio .photo-frame:before{content:"";background:#168f8c47;border-radius:50%;width:355px;height:355px;position:absolute;bottom:-15px;left:18px}.portfolio .photo-frame img{z-index:1;width:136%;height:auto;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.expertise-card{border:1px solid var(--border);z-index:2;background:#fff;border-radius:9px;flex-direction:column;padding:15px 17px;display:flex;position:absolute;bottom:24px;left:-8px;box-shadow:0 18px 35px #0000002e}.expertise-card span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.58rem}.expertise-card strong{color:var(--navy);margin-top:4px;font-size:.75rem}.portfolio-stats{background:#fff;border-radius:12px 12px 0 0;grid-column:1/-1;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.portfolio-stats div{border-right:1px solid var(--border);padding:22px 27px}.portfolio-stats div:last-child{border:0}.portfolio-stats strong{color:var(--navy);font:700 1.6rem Manrope;display:block}.portfolio-stats span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.63rem}.portfolio .portfolio-section{max-width:1200px;margin:auto;padding:96px 0}.section-intro{max-width:640px}.section-intro h2,.contact-section h2{color:var(--navy);letter-spacing:-.05em;font-size:clamp(2.2rem,4.3vw,4rem);font-weight:600;line-height:1.02}.profile-section,.experience-section,.skills-showcase,.additional-projects{grid-template-columns:.8fr 1.2fr;gap:78px;display:grid}.profile-copy>p{color:var(--muted);margin:0 0 26px;font-size:1rem;line-height:1.8}.core-focus{flex-wrap:wrap;gap:8px;display:flex}.core-focus span{border:1px solid var(--border);color:#415169;background:#fff;border-radius:99px;padding:9px 12px;font-size:.72rem;font-weight:600}.experience-section{border-top:1px solid var(--border)}.experience-cards article{grid-template-columns:70px 1fr;gap:22px;padding:0 0 28px 27px;display:grid;position:relative}.experience-cards article:before{border:3px solid var(--blue);content:"";background:#fff;border-radius:50%;width:13px;height:13px;position:absolute;top:2px;left:-7px}.experience-cards article:after{background:var(--border);content:"";width:1px;position:absolute;top:15px;bottom:0;left:-1px}.experience-cards article.promotion:before{border-color:var(--teal)}.experience-cards time{color:var(--blue);font-size:.71rem;font-weight:750}.experience-cards article div>span{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;font-size:.58rem;font-weight:800}.experience-cards h3{color:var(--navy);margin:4px 0 6px;font-size:1.1rem}.experience-cards p{color:var(--muted);margin:0;font-size:.79rem;line-height:1.55}.portfolio .projects-showcase{background:#eaf0f5;max-width:none;padding-inline:max(24px,50vw - 600px)}.confidentiality{color:var(--muted);margin:14px 0 35px;font-size:.72rem}.case-studies{gap:22px;display:grid}.portfolio .case-study{border:1px solid var(--border);background:#fff;border-radius:13px;grid-template-columns:48px 1fr;gap:25px;padding:32px 36px;transition:box-shadow .18s,transform .18s;display:grid;box-shadow:0 10px 28px #0d20360e}.portfolio .case-study.featured{border-left:5px solid var(--blue);padding-block:38px}.portfolio .case-study.independent{border-left:5px solid var(--teal)}.portfolio .case-study.early-career{box-shadow:none;background:#f8fafc}.case-number{color:#a8b5c4;font:700 1.05rem Manrope}.case-meta{justify-content:space-between;align-items:center;display:flex}.case-meta span{color:var(--blue);text-transform:uppercase;background:#e7f2fc;border-radius:5px;padding:6px 8px;font-size:.61rem;font-weight:800}.case-meta time{color:var(--muted);font-size:.68rem;font-weight:600}.portfolio .case-study h3{color:var(--navy);margin:17px 0 6px;font-size:clamp(1.55rem,2.5vw,2.25rem)}.case-role{color:var(--teal);letter-spacing:.05em;text-transform:uppercase;margin:0 0 13px;font-size:.64rem;font-weight:750}.case-overview{color:var(--muted);margin:0;line-height:1.65}.project-emphasis{color:var(--teal);letter-spacing:.06em;text-transform:uppercase;margin:14px 0 0;font-size:.64rem;font-weight:750}.case-columns{border-top:1px solid var(--border);grid-template-columns:1.15fr .85fr;gap:44px;margin-top:23px;padding-top:21px;display:grid}.case-columns h4{color:var(--navy);margin:0 0 11px;font-size:.74rem}.case-columns ul{color:#536278;margin:0;padding-left:17px;font-size:.76rem;line-height:1.55}.case-columns li{margin-bottom:5px}.case-tags{flex-wrap:wrap;gap:6px;display:flex}.case-tags span{background:var(--soft);border:1px solid var(--border);color:#46566d;border-radius:5px;padding:6px 8px;font-size:.61rem}.case-project-summary{align-content:start;gap:15px;display:grid}.case-highlights-list{color:#536278;flex-wrap:wrap;gap:4px 14px;font-size:.66rem;font-weight:650;line-height:1.55;display:flex;overflow:hidden}.case-highlights-list>span{position:relative}.case-highlights-list>span:before{color:#0078d4;content:"|";position:absolute;left:-9px}.portfolio .non-dynamics-project .case-highlights-list>span:before{color:#d83b01}.case-tech-groups{gap:11px;display:grid}.case-tech-group{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:9px;display:grid}.case-tech-group>strong{color:var(--orange);letter-spacing:.06em;text-transform:uppercase;font-size:.61rem;line-height:2.5}.project-toggle{display:none}.additional-grid{gap:16px;display:grid}.additional-grid article{border:1px solid var(--border);background:#fff;border-radius:11px;padding:25px}.additional-meta{justify-content:space-between;align-items:center;display:flex}.additional-meta span{color:var(--teal);text-transform:uppercase;font-size:.6rem;font-weight:800}.additional-meta time{color:var(--muted);font-size:.66rem}.additional-grid h3{color:var(--navy);margin:15px 0 5px;font-size:1.3rem}.additional-grid article>p:not(.case-role),.additional-grid ul{color:var(--muted);font-size:.74rem;line-height:1.55}.additional-grid ul{padding-left:17px}.skills-showcase{border-top:1px solid var(--border)}.portfolio-skill-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.portfolio-skill-grid article{border:1px solid var(--border);background:#fff;border-radius:10px;padding:23px}.portfolio-skill-grid h3{color:var(--navy);margin:0 0 15px;font-size:.85rem}.portfolio-skill-grid article>div{flex-wrap:wrap;gap:4px 10px;display:flex}.portfolio-skill-grid span{color:var(--muted);width:calc(50% - 5px);padding:4px 0;font-size:.65rem}.portfolio-skill-grid span.strong{color:var(--blue);font-weight:750}.portfolio .credentials-section{background:#fff;max-width:none;padding-inline:max(24px,50vw - 600px)}.credential-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px;display:grid}.credential-grid>*{border:1px solid var(--border);color:inherit;background:#f6f8fa;border-radius:10px;padding:23px}.cert-icon{background:var(--navy);color:#fff;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:24px;font-size:.58rem;font-weight:800;display:flex}.credential-grid time{color:var(--blue);font-size:.67rem;font-weight:750}.credential-grid h3{color:var(--navy);margin:7px 0;font-size:.86rem;line-height:1.4}.credential-grid p{color:var(--muted);margin:0;font-size:.67rem;line-height:1.45}.languages-row{border-top:1px solid var(--border);gap:55px;margin-top:30px;padding-top:22px;display:flex}.languages-row div{gap:10px;display:flex}.languages-row span{color:var(--muted)}.contact-section{background:var(--navy);color:#fff;grid-template-columns:1fr 1fr;gap:80px;padding:88px max(24px,50vw - 600px);display:grid}.contact-section h2{color:#fff}.contact-copy>p:not(.section-label){color:#adbdcc;line-height:1.65}.contact-copy>div{flex-direction:column;gap:7px;margin-top:23px;display:flex}.contact-copy a,.contact-copy span{color:#fff;font-size:.78rem}.contact-section form{grid-template-columns:1fr 1fr;gap:13px;display:grid}.contact-section label{color:#bfccda;font-size:.65rem;font-weight:700}.contact-section label:last-of-type{grid-column:1/-1}.contact-section input,.contact-section textarea{color:#fff;background:#ffffff12;border:1px solid #fff3;border-radius:6px;width:100%;margin-top:6px;padding:11px;display:block}.contact-section input:focus,.contact-section textarea:focus{border-color:#65d5d1;outline:2px solid #168f8c40}.contact-section button{background:var(--teal);color:#fff;justify-self:start}.portfolio-footer{color:#fff;background:#08192b;justify-content:space-between;align-items:center;padding:32px max(24px,50vw - 600px);display:flex}.portfolio-footer div{gap:17px;display:flex}.portfolio-footer a,.portfolio-footer span{color:#95a8bb;font-size:.69rem}@media (width<=900px){.portfolio-nav nav{display:none}.portfolio-nav nav.open{background:#fff;flex-direction:column;padding:25px;display:flex;position:absolute;inset:68px 0 auto;box-shadow:0 18px 30px #0d20361f}.nav-toggle{margin-left:auto;margin-right:12px;display:block}.nav-toggle span{background:var(--navy);width:21px;height:2px;margin:4px;display:block}.portfolio-hero{grid-template-columns:minmax(0,1fr) 280px}.portfolio .portfolio-section{margin-inline:24px}.portfolio .projects-showcase,.portfolio .credentials-section{margin-inline:0}.profile-section,.experience-section,.skills-showcase,.additional-projects{grid-template-columns:.7fr 1.3fr;gap:45px}.credential-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=680px){.nav-download{display:none}.portfolio-hero{flex-direction:column;padding-top:62px;display:flex}.portfolio-hero h1{font-size:clamp(4rem,20vw,6rem)}.hero-visual{min-height:340px}.portfolio .photo-frame{width:290px;height:340px;min-height:340px}.portfolio .photo-frame:before{width:265px;height:265px;left:12px}.portfolio .photo-frame img{width:128%}.portfolio-stats{grid-template-columns:repeat(2,1fr);margin-inline:-24px}.profile-section,.experience-section,.skills-showcase,.additional-projects{display:block}.profile-copy,.experience-cards,.portfolio-skill-grid,.additional-grid{margin-top:38px}.portfolio .portfolio-section{padding-block:72px}.portfolio .case-study{grid-template-columns:1fr;padding:24px 20px}.case-number{display:none}.case-meta{flex-direction:column;align-items:flex-start;gap:9px}.case-columns{grid-template-columns:1fr}.portfolio .case-study .case-details{display:none}.portfolio .case-study.expanded .case-details{display:grid}.portfolio .project-toggle{border:1px solid var(--border);color:var(--blue);background:#fff;border-radius:6px;margin-top:16px;padding:8px 11px;font-size:.68rem;font-weight:700;display:inline-flex}.portfolio-skill-grid,.credential-grid,.contact-section,.contact-section form{grid-template-columns:1fr}.contact-section label:last-of-type{grid-column:1}.languages-row,.portfolio-footer,.portfolio-footer div{flex-direction:column;align-items:flex-start;gap:9px}}.portfolio .portfolio-hero{background:0 0;grid-template-columns:minmax(0,1fr) 330px;max-width:1200px;min-height:0;margin:auto;padding:76px 0 0}.portfolio .hero-visual{align-items:end}.portfolio .photo-frame{width:310px;height:390px}.portfolio .portfolio-stats{background:0 0;border-top:1px solid #d8e0dc;border-bottom:1px solid #d8e0dc;grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:0;margin:0}.portfolio .portfolio-stats div{background:var(--accent-soft);border-color:#cbdcda;min-height:100px;padding:24px 28px}.portfolio .top-credentials{background:var(--paper);border-bottom:1px solid #dde3e0;grid-template-columns:1.35fr 1fr .65fr;gap:0;max-width:1200px;margin:auto;padding:30px 0 42px}.portfolio .portfolio-section,.portfolio .skills-showcase{background:var(--paper);border-top:0;padding-block:76px}.portfolio .portfolio-section .section-intro{border-bottom:1px solid #d8e0dc;padding-bottom:22px}.portfolio .experience-section{background:var(--paper-alt);max-width:none;padding-inline:max(24px,50vw - 600px)}.portfolio .projects-showcase{background:#ede9e1}.portfolio .case-study,.portfolio .case-study.featured,.portfolio .case-study.independent,.portfolio .case-study.early-career{border:1px solid #d4d0c7;border-left:4px solid var(--accent);box-shadow:none;border-radius:5px}@media (width<=1000px){.portfolio .portfolio-hero,.portfolio .top-credentials{margin-inline:24px}.portfolio .portfolio-hero{grid-template-columns:minmax(0,1fr) 280px}.portfolio .top-credentials{grid-template-columns:1fr 1fr}}@media (width<=680px){.portfolio .portfolio-hero{margin-inline:20px;padding-top:48px;display:flex}.portfolio .hero-content{padding-bottom:20px}.portfolio .portfolio-stats{grid-template-columns:repeat(2,1fr);width:100%}.portfolio .portfolio-stats div:last-child{grid-column:auto}.portfolio .top-credentials{grid-template-columns:1fr;margin-inline:20px}.portfolio .top-certifications,.portfolio .top-education,.portfolio .top-languages{border:0;border-top:1px solid #dde3e0;padding:24px 0}}.portfolio .skills-showcase{padding-block:58px 72px;display:block}.portfolio .skills-showcase .section-intro{align-items:baseline;gap:18px;max-width:none;margin-bottom:24px;display:flex}.portfolio .skills-showcase .section-label{margin:0}.portfolio .skills-showcase .section-intro h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.65rem,2.5vw,2.25rem);line-height:1}.portfolio .skills-showcase .portfolio-skill-grid{grid-template-columns:repeat(3,1fr);margin-top:0}.portfolio .skills-showcase .portfolio-skill-grid span{font-size:.76rem;line-height:1.4}@media (width<=1000px){.portfolio .skills-showcase .portfolio-skill-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=680px){.portfolio .skills-showcase{padding-block:48px 60px}.portfolio .skills-showcase .section-intro{flex-direction:column;align-items:flex-start;gap:8px}.portfolio .skills-showcase .portfolio-skill-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.portfolio *,.portfolio :before,.portfolio :after{transition:none!important}}@media print{.portfolio-nav,.hero-buttons,.contact-section form,.project-toggle{display:none!important}.portfolio .case-details{display:grid!important}}.portfolio .contact-section{background:linear-gradient(135deg,#0d2036,#102b49);grid-template-columns:1.05fr .95fr;align-items:end;gap:70px;width:100%;max-width:none;margin:0;padding-block:78px;display:grid}.portfolio .contact-copy{max-width:690px}.portfolio .contact-copy h2{font-size:clamp(2.25rem,4vw,3.7rem)}.portfolio .contact-copy>p:not(.section-label){max-width:590px;margin:20px 0 0}.contact-actions{display:flex;flex-direction:row!important;gap:10px!important;margin-top:28px!important}.contact-actions a{letter-spacing:.04em;text-transform:uppercase;border-radius:7px;padding:12px 16px;font-weight:750;font-size:.7rem!important}.contact-primary{background:var(--blue);color:#fff!important}.contact-secondary{border:1px solid #ffffff40;color:#fff!important}.contact-details{gap:10px;display:grid}.contact-details>*{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:9px;flex-direction:column;padding:16px 18px;display:flex}.contact-details span{color:#8fa5ba;letter-spacing:.1em;text-transform:uppercase;font-size:.6rem;font-weight:700}.contact-details strong{color:#fff;margin-top:5px;font-size:.82rem}.portfolio .portfolio-footer{background:#081827;justify-content:space-between;align-items:center;width:100%;max-width:none;margin:0;padding:24px max(24px,50vw - 600px);display:flex}.portfolio-footer p{align-items:center;gap:15px;margin:0;display:flex}.portfolio-footer strong{color:#fff;font-size:.78rem}@media (width<=680px){.portfolio .contact-section{grid-template-columns:1fr;align-items:stretch;gap:42px;padding-block:65px}.contact-actions{flex-direction:column!important;align-items:stretch!important}.contact-actions a{text-align:center}.portfolio .portfolio-footer,.portfolio-footer p{flex-direction:column;align-items:flex-start}}.portfolio .top-credentials{grid-template-columns:minmax(0,1.7fr) minmax(250px,.75fr) minmax(190px,.5fr);align-items:stretch;gap:0;padding-block:30px}.portfolio .top-certifications,.portfolio .top-education,.portfolio .top-languages{padding-inline:28px}.portfolio .top-languages{padding-right:0}.top-education{flex-direction:column;display:flex}.top-education time{color:var(--blue);margin-bottom:6px;font-size:.65rem;font-weight:750}.top-education strong{color:var(--navy);font-size:.78rem}.top-education>span{color:#42536a;margin-top:4px;font-size:.7rem;line-height:1.4}.top-education small{color:var(--muted);margin-top:6px;font-size:.62rem;line-height:1.45}@media (width<=1000px){.portfolio .top-credentials{grid-template-columns:1fr 1fr}.portfolio .top-languages{border-left:0;border-top:1px solid var(--border);grid-column:1/-1;margin-top:24px;padding:22px 0 0}}@media (width<=680px){.portfolio .top-credentials{grid-template-columns:1fr}.portfolio .top-certifications,.portfolio .top-education,.portfolio .top-languages{border-left:0;padding-inline:0}.portfolio .top-education,.portfolio .top-languages{border-top:1px solid var(--border);margin-top:22px;padding-top:22px}.portfolio .top-languages{grid-column:auto}}.portfolio .case-columns>div:last-child{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;padding:0!important}.portfolio .portfolio-hero{color:var(--text);background:#fff;grid-template-columns:230px minmax(0,1fr);grid-template-areas:"photo content""stats stats";gap:0 48px;min-height:0;padding:48px max(24px,50vw - 600px) 0;display:grid}.portfolio .hero-content{grid-area:content;align-self:center;max-width:none;padding-bottom:42px}.portfolio .hero-visual{grid-area:photo;align-self:end;min-height:330px}.portfolio .photo-frame:before{width:230px;height:230px;bottom:-45px;left:0}.portfolio .portfolio-hero .section-label{color:var(--blue);margin-bottom:9px}.portfolio .portfolio-hero h1,.portfolio .portfolio-hero h1 span{color:var(--navy);letter-spacing:-.06em;font-size:clamp(2.8rem,5vw,4.6rem);line-height:1}.portfolio .portfolio-hero h2{color:#30425a;max-width:820px;margin:18px 0 11px;font-size:clamp(1.02rem,1.7vw,1.3rem);line-height:1.4}.portfolio .portfolio-hero .hero-content>p:not(.section-label){color:var(--muted);max-width:850px;font-size:.82rem;line-height:1.62}.portfolio .hero-buttons{margin-top:20px}.portfolio .hero-details{border-top:1px solid var(--border);margin-top:20px;padding-top:15px}.portfolio .portfolio-stats{border-radius:0;grid-area:stats}@media (width<=680px){.portfolio .portfolio-hero{grid-template-columns:1fr;grid-template-areas:"photo""content""stats";padding-top:30px;display:grid}.portfolio .hero-visual{justify-content:flex-start;min-height:255px}.portfolio .photo-frame{width:190px;height:255px;min-height:255px}.portfolio .photo-frame:before{width:190px;height:190px}.portfolio .hero-content{padding:28px 0 38px}.portfolio .portfolio-hero h1,.portfolio .portfolio-hero h1 span{font-size:clamp(2.7rem,13vw,4rem)}}.top-credentials{border-bottom:1px solid var(--border);background:#fff;grid-template-columns:1fr 270px;gap:65px;max-width:none;margin:0;padding:34px max(24px,50vw - 600px);display:grid}.top-credentials .section-label{margin-bottom:12px}.top-certifications>div{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.top-certifications a{border-right:1px solid var(--border);grid-template-columns:38px 1fr 16px;align-items:start;gap:6px 10px;padding-right:18px;display:grid}.top-certifications a:last-child{border:0}.top-certifications time{color:var(--blue);font-size:.65rem;font-weight:750}.top-certifications strong{color:#34445b;font-size:.7rem;line-height:1.4}.top-certifications a>span{color:var(--blue);font-size:.72rem}.top-languages{border-left:1px solid var(--border);padding-left:28px}.top-languages>div{justify-content:space-between;padding:5px 0;font-size:.72rem;display:flex}.top-languages span{color:var(--muted)}.education-section{border-top:1px solid var(--border);grid-template-columns:.7fr 1.3fr;gap:70px;display:grid}.education-card{border:1px solid var(--border);border-left:4px solid var(--blue);background:#fff;border-radius:9px;grid-template-columns:90px 1fr;align-items:start;gap:24px;padding:25px;display:grid}.education-card time{color:var(--blue);font-size:.73rem;font-weight:750}.education-card h3{color:var(--navy);margin:0 0 7px;font-size:1rem}.education-card p{color:var(--muted);margin:0;font-size:.77rem;line-height:1.5}@media (width<=900px){.top-credentials{grid-template-columns:1fr}.top-languages{border-left:0;border-top:1px solid var(--border);padding-top:22px;padding-left:0}}@media (width<=680px){.top-certifications>div{grid-template-columns:1fr}.top-certifications a{border-bottom:1px solid var(--border);border-right:0;padding:10px 0}.education-section{display:block}.education-card{grid-template-columns:1fr;margin-top:35px}}@media (width<=1000px){.portfolio .top-credentials{grid-template-columns:1fr 1fr}.portfolio .top-languages{grid-column:1/-1}}@media (width<=680px){.portfolio .portfolio-stats{grid-template-columns:repeat(2,1fr)}.portfolio .portfolio-stats div:last-child{grid-column:1/-1}.portfolio .top-credentials{grid-template-columns:1fr}.portfolio .top-languages{grid-column:auto}}.portfolio .portfolio-nav{background:#fffffff7;height:74px}.portfolio .portfolio-logo span{color:var(--blue)}.portfolio .portfolio-hero{color:var(--text);background:radial-gradient(circle at 82% 48%,#168f8c1f,#0000 26%),linear-gradient(110deg,#fff 0% 62%,#edf5fa 100%);min-height:670px;padding-top:82px}.portfolio .portfolio-hero:after{background:linear-gradient(135deg,#176fd114,#168f8c12);border-radius:50%;width:470px;height:470px;top:70px;right:-120px}.portfolio .portfolio-hero .section-label{color:var(--blue)}.portfolio .portfolio-hero h1,.portfolio .portfolio-hero h1 span{color:var(--navy)}.portfolio .portfolio-hero h2{color:#273952}.portfolio .portfolio-hero .hero-content>p:not(.section-label){color:var(--muted)}.portfolio .cta.secondary{border-color:var(--border);color:var(--navy);background:#fff}.portfolio .hero-details a,.portfolio .hero-details span{color:#506079}.portfolio .photo-frame:before{background:linear-gradient(145deg,#176fd12e,#168f8c33)}.portfolio .portfolio-stats{background:var(--navy)}.portfolio .portfolio-stats div{border-color:#ffffff1f}.portfolio .portfolio-stats strong{color:#fff}.portfolio .case-study,.portfolio .case-study.featured,.portfolio .case-study.independent,.portfolio .case-study.early-career{border:1px solid #c9d5e2;border-left:5px solid var(--blue);background:#fff;box-shadow:0 8px 24px #0d203611}.portfolio .case-study.featured{padding-block:38px}.portfolio .case-study.early-career{padding-block:28px}.portfolio .case-meta>div,.portfolio .additional-meta>div{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.portfolio .case-meta b,.portfolio .additional-meta b{color:#3f536c;font-size:.65rem;font-weight:750}.portfolio .case-tags{gap:7px}.portfolio .case-tags span{color:#245b91;background:#f4f8fc;border:1px solid #8fb5da;border-radius:5px;padding:6px 9px;font-size:.63rem;font-weight:650}.portfolio .additional-grid article{border-color:#c9d5e2;border-top:4px solid var(--blue)}@media (width<=680px){.portfolio .portfolio-hero{min-height:0}.portfolio .case-meta,.portfolio .additional-meta,.portfolio .case-meta>div,.portfolio .additional-meta>div{align-items:flex-start}}.portfolio .hero-visual{align-self:stretch}.portfolio .photo-frame{height:100%}.portfolio .portfolio-stats{grid-template-columns:repeat(5,1fr)}.portfolio .top-credentials{grid-template-columns:minmax(340px,1.15fr) minmax(300px,1fr) minmax(200px,.6fr);gap:0}.portfolio .top-certifications>div{flex-direction:column;gap:0;display:flex}.portfolio .top-certifications a{border-bottom:1px solid var(--border);border-right:0;grid-template-columns:42px 1fr 16px;align-items:center;padding:9px 0}.portfolio .top-certifications a:first-child{padding-top:0}.portfolio .top-certifications a:last-child{border-bottom:0;padding-bottom:0}@media (width<=1000px){.portfolio .top-credentials{grid-template-columns:1fr 1fr}.portfolio .top-languages{grid-column:1/-1}}@media (width<=680px){.portfolio .portfolio-stats{grid-template-columns:repeat(2,1fr)}.portfolio .portfolio-stats div:last-child{grid-column:1/-1}.portfolio .top-credentials{grid-template-columns:1fr}.portfolio .top-languages{grid-column:auto}}.portfolio .top-credentials{border-bottom:1px solid var(--border);background:#eef3f7;gap:14px;padding-block:24px}.portfolio .top-certifications,.portfolio .top-education,.portfolio .top-languages{border:1px solid var(--border);background:#fff;border-radius:9px;min-width:0;padding:20px 22px}.portfolio .top-certifications a{padding-block:8px}.portfolio .top-certifications strong{text-overflow:ellipsis;overflow:hidden}.portfolio .skills-showcase{border-top:0}@media (width<=1000px){.portfolio .top-languages{border:1px solid var(--border);grid-column:1/-1;margin-top:0;padding:20px 22px}}@media (width<=680px){.portfolio .top-education,.portfolio .top-languages{border:1px solid var(--border);margin-top:0;padding:20px 22px}}.portfolio .portfolio-section,.portfolio .skills-showcase{max-width:1200px;margin-inline:auto;padding-block:68px;display:block}.portfolio .portfolio-section+.portfolio-section{border-top:1px solid var(--border)}.portfolio .portfolio-section .section-intro{align-items:baseline;gap:18px;max-width:none;margin:0 0 30px;display:flex}.portfolio .portfolio-section .section-intro .section-label{flex:none;min-width:72px;margin:0}.portfolio .portfolio-section .section-intro h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.75rem,2.5vw,2.25rem);line-height:1.05}.portfolio .experience-cards,.portfolio .portfolio-skill-grid,.portfolio .additional-grid{margin-top:0}.portfolio .portfolio-skill-grid{grid-template-columns:repeat(2,1fr)}.portfolio .projects-showcase{max-width:none;margin-inline:0;padding-inline:max(24px,50vw - 600px)}.portfolio .projects-showcase .section-intro,.portfolio .projects-showcase .case-studies{width:100%;max-width:1200px}.portfolio .projects-showcase .case-studies,.portfolio .projects-showcase .case-study{width:100%;margin-inline:0}.portfolio .case-columns>div:last-child{background:0 0;border:0;border-radius:0;padding:0}@media (width<=1000px){.portfolio .portfolio-section,.portfolio .skills-showcase{margin-inline:24px}.portfolio .projects-showcase{margin-inline:0}}@media (width<=680px){.portfolio .portfolio-section,.portfolio .skills-showcase{padding-block:52px}.portfolio .portfolio-section .section-intro{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:24px}.portfolio .portfolio-section .section-intro .section-label{min-width:0}.portfolio .portfolio-skill-grid{grid-template-columns:1fr}.portfolio .projects-showcase .confidentiality{margin:-10px 0 24px}}.portfolio{--paper:#fbfaf7;--paper-alt:#f2f5f3;--ink:#172536;--accent:#176b68;--accent-soft:#dfeceb;background:var(--paper);color:var(--ink)}.portfolio .portfolio-nav{background:#fbfaf7f2;border-bottom-color:#dde3e0;height:68px}.portfolio .portfolio-logo span,.portfolio .section-label{color:var(--accent)}.portfolio .about-section{background:var(--paper)}.portfolio .portfolio-hero{background:0 0;grid-template-columns:310px minmax(0,1fr);gap:0 64px;max-width:1200px;min-height:0;margin:auto;padding:76px 0 0}.portfolio .portfolio-hero:after{display:none}.portfolio .hero-content{padding-bottom:58px}.portfolio .portfolio-hero h1{color:var(--ink);font-size:clamp(3.4rem,6vw,5.5rem)}.portfolio .portfolio-hero h1 span{color:var(--accent)}.portfolio .portfolio-hero h2{color:#26384a;max-width:780px;font-size:clamp(1.25rem,2vw,1.65rem)}.portfolio .hero-summary span{display:block}.portfolio .hero-summary span+span{margin-top:8px}.portfolio .cta.primary{background:var(--accent);border-color:var(--accent)}.portfolio .hero-visual{align-items:end;min-height:390px}.portfolio .photo-frame{width:310px;height:390px;min-height:390px}.portfolio .photo-frame:before{background:var(--accent-soft);width:285px;height:285px}.portfolio .portfolio-stats{background:0 0;border:1px solid #afc5c1;border-radius:5px;grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:0;margin:0}.portfolio .portfolio-stats div{background:var(--accent-soft);border-color:#b8ceca;align-items:baseline;gap:10px;min-height:76px;padding:21px 28px;display:flex}.portfolio .portfolio-stats strong{color:var(--ink);font-size:1.7rem}.portfolio .portfolio-stats span{color:#536b6a}.portfolio .top-credentials{background:#fff;border:1px solid #d5ded9;border-radius:6px;grid-template-columns:1.35fr 1fr .65fr;gap:0;max-width:1200px;margin:28px auto 44px;padding:26px 0}.portfolio .top-certifications,.portfolio .top-education,.portfolio .top-languages{background:0 0;border:0;border-radius:0;padding:0 30px}.portfolio .top-certifications{padding-left:28px}.portfolio .top-education,.portfolio .top-languages{border-left:2px solid #c4d0cb}.portfolio .top-certifications>div{gap:5px}.portfolio .top-certifications a,.portfolio .top-certifications a:first-child,.portfolio .top-certifications a:last-child{background:#f6f8f6;border:0;border-radius:4px;padding:8px 10px}.portfolio .portfolio-section,.portfolio .skills-showcase{background:var(--paper);border-top:0;padding-block:76px;display:block}.portfolio .portfolio-section .section-intro{border-bottom:1px solid #d8e0dc;align-items:baseline;gap:18px;max-width:none;margin:0 0 30px;padding-bottom:22px;display:flex}.portfolio .portfolio-section .section-intro h2{margin:0;font-size:clamp(1.75rem,2.5vw,2.25rem)}.portfolio .portfolio-skill-grid{grid-template-columns:repeat(2,1fr);margin-top:0}.portfolio .portfolio-skill-grid article{box-shadow:none;background:0 0;border-color:#d1dbd6;border-radius:4px}.portfolio .portfolio-skill-grid span{font-size:.76rem}.portfolio .portfolio-skill-grid span.strong{color:var(--accent)}.portfolio .experience-section{background:var(--paper-alt);max-width:none;margin-inline:0;padding-inline:max(24px,50vw - 600px)}.portfolio .experience-cards{margin-top:0}.portfolio .experience-cards article{border-left-color:#bdceca}.portfolio .experience-cards article:before{border-color:var(--accent)}.portfolio .experience-cards article>div>span{color:var(--accent)}.portfolio .projects-showcase{background:#ede9e1;max-width:none;margin-inline:0;padding-inline:max(24px,50vw - 600px)}.portfolio .projects-showcase .case-studies,.portfolio .projects-showcase .case-study{width:100%;max-width:1200px;margin-inline:0}.portfolio .projects-showcase .confidentiality{margin:-18px 0 30px 90px}.portfolio .case-study,.portfolio .case-study.featured,.portfolio .case-study.independent,.portfolio .case-study.early-career{border:1px solid #d4d0c7;border-left:4px solid var(--accent);box-shadow:none;background:#fff;border-radius:5px}.portfolio .case-meta span{background:var(--accent-soft);color:var(--accent)}.portfolio .case-role,.portfolio .project-emphasis{color:var(--accent)}.portfolio .case-tags span{color:#295f5b;background:#f8faf8;border-color:#afc9c4}.portfolio .case-columns>div:last-child{background:0 0;border:0;padding:0}.portfolio .additional-projects,.portfolio .contact-section{display:none}@media (width<=1000px){.portfolio .portfolio-hero,.portfolio .top-credentials{margin-inline:24px}.portfolio .portfolio-hero{grid-template-columns:260px minmax(0,1fr)}.portfolio .top-credentials{grid-template-columns:1fr 1fr}}@media (width<=680px){.portfolio .portfolio-hero{margin-inline:20px;padding-top:48px;display:flex}.portfolio .hero-content{padding-bottom:20px}.portfolio .hero-summary span{display:inline}.portfolio .hero-summary span+span{margin-top:0}.portfolio .hero-summary span+span:before{content:" "}.portfolio .portfolio-stats{grid-template-columns:repeat(2,1fr);width:100%}.portfolio .portfolio-stats div{flex-direction:column;align-items:flex-start;gap:3px}.portfolio .portfolio-stats div:last-child{grid-column:auto}.portfolio .top-credentials{grid-template-columns:1fr;margin-inline:20px}.portfolio .top-certifications,.portfolio .top-education,.portfolio .top-languages{border:0;border-top:1px solid #dde3e0;padding:24px 0}.portfolio .portfolio-section .section-intro{flex-direction:column;align-items:flex-start;gap:8px}.portfolio .portfolio-skill-grid{grid-template-columns:1fr}.portfolio .projects-showcase .confidentiality{margin:-10px 0 24px}}body:has(.portfolio){background:#f4f1eb}.portfolio{--accent:#0078d4;--accent-soft:#e4f2fc;--blue:#0078d4;--teal:#0078d4;--fancy-ink:#102337;--fancy-teal:#0078d4;--fancy-coral:#d83b01;--fancy-line:#10233724;background:#f7f5f0}.portfolio .portfolio-nav{background:#ffffffd1;border:1px solid #1023371a;border-radius:16px;width:calc(100% - 48px);max-width:1200px;height:62px;margin:14px auto 0;padding-inline:24px;top:14px;box-shadow:0 12px 40px #10233714}.portfolio .portfolio-logo{letter-spacing:-.025em;font-size:.82rem}.portfolio .portfolio-logo:before{background:var(--fancy-coral);content:"";border-radius:50%;width:7px;height:7px;margin-right:9px;display:inline-block}.portfolio .portfolio-nav nav a{position:relative}.portfolio .portfolio-nav nav a:after{background:var(--fancy-teal);content:"";transform-origin:0;width:100%;height:2px;transition:transform .2s;position:absolute;bottom:-7px;left:0;transform:scaleX(0)}.portfolio .portfolio-nav nav a:hover:after{transform:scaleX(1)}.portfolio .portfolio-nav nav a.active{color:var(--fancy-teal)}.portfolio .portfolio-nav nav a.active:after{transform:scaleX(1)}.portfolio .about-section{position:relative;overflow:hidden}.portfolio .about-section:before{color:#0078d40d;content:"AN";letter-spacing:-.13em;pointer-events:none;font:700 clamp(16rem,31vw,32rem)/.75 Manrope,sans-serif;position:absolute;top:150px;right:-1vw}.portfolio .portfolio-hero{gap:0 74px;padding-top:104px}.portfolio .hero-content{align-self:center;padding-bottom:72px}.portfolio .portfolio-hero .section-label{align-items:center;gap:10px;font-size:.72rem;display:flex}.portfolio .portfolio-hero .section-label:before{background:var(--fancy-coral);content:"";width:34px;height:2px}.portfolio .portfolio-hero h1{color:var(--fancy-ink);max-width:820px;margin-block:22px 30px;font-size:clamp(4rem,7.4vw,6.6rem);line-height:.88}.portfolio .portfolio-hero h1 span{color:var(--fancy-teal);display:inline-block}.portfolio .hero-summary{border-left:2px solid var(--fancy-coral);padding-left:20px;max-width:760px!important;font-size:.9rem!important;line-height:1.68!important}.portfolio .top-credentials{display:none}.portfolio .photo-frame{overflow:visible}.portfolio .photo-frame img{width:100%}.portfolio .photo-frame:before{display:none}.portfolio .photo-frame{aspect-ratio:373/291;height:auto;min-height:0}.portfolio .portfolio-stats{border-bottom:1px solid #10233724;border-top:3px solid var(--fancy-teal);box-shadow:none;z-index:2;background:#f8fbfd;border-radius:0;grid-template-columns:repeat(4,1fr);gap:0;width:100%;margin-bottom:38px;position:relative;left:auto;overflow:hidden;transform:none}.portfolio .portfolio-stats div{box-shadow:none;background:radial-gradient(circle at 90% 10%,#0078d41f,#0000 42%),linear-gradient(135deg,#fffffffa,#e6f2f9d1);border:0;border-right:1px solid #10233724;border-radius:0;align-items:center;gap:14px;min-height:82px;padding:22px 28px;display:flex;position:relative;overflow:hidden}.portfolio .portfolio-stats div:nth-child(2n){background:radial-gradient(circle at 88% 12%,#d83b0117,#0000 38%),linear-gradient(135deg,#fff,#f7f2ed)}.portfolio .portfolio-stats div:last-child{border-right:0}.portfolio .portfolio-stats strong{color:var(--fancy-teal);letter-spacing:-.06em;background:0 0;border:0;border-radius:0;flex:none;min-width:0;height:auto;padding:0;font:700 clamp(1.3rem,1.7vw,1.55rem)/1 Manrope,sans-serif;display:block}.portfolio .portfolio-stats span{color:#42596a;letter-spacing:.09em;max-width:105px;font:650 .56rem/1.2 DM Sans,sans-serif}.portfolio .hero-details{grid-area:details;justify-content:space-between;align-items:center;gap:16px;display:flex}.portfolio .hero-info-group{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.portfolio .hero-contact-panel{flex-direction:column;order:1;grid-area:contact;align-self:stretch;gap:8px;padding:0;display:flex}.portfolio .hero-left-column{flex-direction:column;grid-area:left;align-self:end;min-width:0;display:flex}.portfolio .hero-left-column .hero-visual{order:2}.portfolio .hero-language-group{align-items:flex-end;margin-left:auto}.portfolio .hero-content-languages{margin-top:22px}.portfolio .hero-content-languages .hero-languages{margin-left:0}.portfolio .hero-content>.hero-contact-panel{margin-top:20px;padding:0;transform:none}.portfolio .hero-content>.hero-contact-panel .hero-contact-list{grid-template-columns:repeat(4,minmax(0,1fr))}.portfolio .hero-details-label{letter-spacing:.09em;text-transform:uppercase;font-weight:800;color:#748697!important;font-size:.75rem!important}.portfolio .hero-contact-list{background:0 0;border:0;border-radius:0;grid-template-columns:1fr;align-items:stretch;gap:8px;display:grid;overflow:visible}.portfolio .hero-contact-list .hero-detail-item{letter-spacing:0;text-transform:none;background:0 0;border:0;border-radius:0;gap:9px;min-height:0;padding:1px 0;font-weight:600;color:#42596a!important;font-size:.68rem!important}.portfolio .hero-contact-list .hero-detail-item>span{flex-direction:column;gap:2px;min-width:0;display:flex}.portfolio .hero-contact-list .hero-detail-item small{color:#7a8b99;letter-spacing:.08em;text-transform:uppercase;font-size:.52rem;font-weight:800}.portfolio .hero-contact-list .hero-detail-item strong{color:#42596a;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:650;overflow:hidden}.portfolio .hero-contact-list .hero-detail-item svg{box-sizing:border-box;background:#0078d414;border-radius:50%;width:26px;height:26px;padding:5px}.portfolio .hero-detail-item{white-space:nowrap;align-items:center;gap:7px;display:inline-flex;color:#40556b!important;font-size:.7rem!important}.portfolio .hero-detail-item svg,.portfolio .hero-languages>svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;flex:none;width:16px;height:16px}.portfolio .hero-detail-item svg{color:var(--fancy-teal)}.portfolio .hero-detail-item svg.linkedin-icon{fill:currentColor;stroke:none}.portfolio .hero-detail-item b{color:var(--fancy-teal);font-size:.72rem}.portfolio .hero-languages{flex:none;align-items:center;gap:7px;margin-left:auto;display:flex}.portfolio .hero-languages>svg{color:var(--fancy-teal);margin-right:2px}.portfolio .hero-languages .hero-pill,.portfolio .hero-contact-list .hero-pill{background:#0078d40f;border:1px solid #0078d429;border-radius:99px;align-items:center;gap:5px;padding:7px 10px;display:inline-flex}.portfolio .hero-languages .hero-pill .pill-label,.portfolio .hero-languages .hero-pill .pill-value,.portfolio .hero-contact-list .hero-pill .pill-label,.portfolio .hero-contact-list .hero-pill .pill-value{font-weight:700;line-height:1}.portfolio .hero-languages .hero-pill .pill-label,.portfolio .hero-contact-list .hero-pill .pill-label{color:var(--fancy-teal);letter-spacing:.065em;text-transform:uppercase;font-size:.74rem}.portfolio .hero-languages .hero-pill .pill-value,.portfolio .hero-contact-list .hero-pill .pill-value{color:#42596a;letter-spacing:.02em;font-size:.66rem}.portfolio .top-credentials{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1;background:#ffffffb8;border-color:#10233721;margin-top:0;position:relative;box-shadow:0 16px 44px #1023370f}.portfolio .top-education,.portfolio .top-languages{border-left-color:#0078d44d}.portfolio .top-certifications a,.portfolio .top-certifications a:first-child,.portfolio .top-certifications a:last-child{background:0 0;border:1px solid #0000;transition:background .18s,border-color .18s,transform .18s}.portfolio .top-certifications a:hover{background:#fff;border-color:#0078d433;transform:translate(4px)}.portfolio .portfolio-section{position:relative}.portfolio .portfolio-section .section-intro{border-bottom:0;margin-bottom:38px;padding-bottom:0}.portfolio .portfolio-section .section-intro:after{background:linear-gradient(90deg, var(--fancy-coral) 0 54px, var(--fancy-line) 54px 100%);content:"";width:100%;height:1px;position:absolute;bottom:-18px;left:0}.portfolio .portfolio-section .section-intro{position:relative}.portfolio .portfolio-section .section-intro h2{color:var(--fancy-ink);letter-spacing:-.055em;font-size:clamp(2.2rem,4vw,3.6rem)}.portfolio .skills-showcase{padding-block:64px}.portfolio .portfolio-skill-grid{display:block}.portfolio .portfolio-skill-grid article{background:0 0;border:0;border-top:1px solid #10233724;border-radius:0;grid-template-columns:240px 1fr;align-items:start;gap:28px;min-height:0;padding:16px 0;transition:none;display:grid;position:relative;overflow:visible}.portfolio .portfolio-skill-grid article:before{color:#0078d47a;content:"0" counter(skill-card);counter-increment:skill-card;font:700 .7rem/1 Manrope;position:absolute;top:20px;left:0}.portfolio .portfolio-skill-grid{counter-reset:skill-card}.portfolio .portfolio-skill-grid article:hover{box-shadow:none;transform:none}.portfolio .portfolio-skill-grid h3{color:var(--fancy-ink);margin:0;padding-left:34px;font-size:.9rem;line-height:1.35}.portfolio .portfolio-skill-grid article>div{flex-wrap:wrap;gap:7px;display:flex}.portfolio .portfolio-skill-grid span{color:#516473;background:#ffffffbf;border:1px solid #1023373d;border-radius:99px;width:auto;padding:5px 9px;font-size:.68rem}.portfolio .portfolio-skill-grid span.strong{color:var(--fancy-teal);background:#0078d41a;border-color:#0078d47a}.portfolio .experience-section{background:linear-gradient(135deg,#0078d40e,#0000 38%),#eef1ed;padding-block:100px 58px}.portfolio .experience-cards{margin-left:90px}.portfolio .experience-cards article{border-left:1px solid #0078d459;grid-template-columns:94px 1fr;padding:0 0 38px 34px}.portfolio .experience-cards article:before{background:var(--fancy-teal);box-shadow:0 0 0 1px var(--fancy-teal);border:3px solid #eef1ed;width:12px;height:12px;left:-7px}.portfolio .experience-cards article>time{color:var(--fancy-coral);font-size:.78rem}.portfolio .experience-cards article.certification:before{background:var(--fancy-coral);box-shadow:0 0 0 1px var(--fancy-coral);border-color:#eef1ed}.portfolio .experience-cards article>div>span svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;vertical-align:-3px;width:14px;height:14px;margin-right:7px}.portfolio .experience-cards article.promotion:before{background:#eef1ed;border:2px solid #0078d4;box-shadow:0 0 0 1px #0078d4}.portfolio .experience-cards article.certification>div>span{color:var(--fancy-coral)}.portfolio .experience-cards article.education-milestone:before{background:var(--fancy-ink);box-shadow:0 0 0 1px var(--fancy-ink);border-color:#eef1ed}.portfolio .experience-cards h3{font-size:1.2rem}.portfolio .projects-showcase{background:#e9e5dc;padding-block:104px}.portfolio .case-studies{border-left:0;gap:26px;padding-left:0;margin-left:0!important}.portfolio .case-study,.portfolio .case-study.featured,.portfolio .case-study.independent,.portfolio .case-study.early-career{background:#ffffffdb;border:1px solid #1023371f;border-left:0;border-radius:14px;row-gap:0;padding:38px 42px;display:block;position:relative;overflow:hidden;box-shadow:0 10px 32px #1023370f}.portfolio .case-body{display:block}.portfolio .case-study:before{background:linear-gradient(180deg, var(--fancy-teal), #0078d4);content:"";width:5px;height:100%;position:absolute;top:0;left:0}.portfolio .case-study.non-dynamics-project:before{background:linear-gradient(#d83b01,#f07b42)}.portfolio .case-study:after{display:none}.portfolio .case-study:hover{transform:translateY(-3px);box-shadow:0 22px 48px #1023371c}.portfolio .case-number{color:#0078d459;font-size:1.4rem}.portfolio .case-study.non-dynamics-project .case-number{color:#d83b017a}.portfolio .case-study h3,.portfolio .case-study.featured h3,.portfolio .case-study.independent h3,.portfolio .case-study.early-career h3{letter-spacing:-.045em;margin:0;font-size:clamp(1.5rem,2vw,2rem)}.portfolio .case-products span{color:#006cbe;background:#0078d411;border:1px solid #0078d46b;border-radius:5px;padding-inline:11px;font-size:.6875rem;line-height:1.2}.portfolio .case-meta{grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-areas:"number title products date";align-items:center;gap:14px;display:grid}.portfolio .case-meta>.case-number{grid-area:number}.portfolio .case-meta>h3{grid-area:title}.portfolio .case-meta>.case-products{flex-flow:wrap;grid-area:products;align-items:center;gap:6px;margin-left:10px;display:flex}.portfolio .case-role{margin-block:14px}.portfolio .case-meta>.case-date{flex-direction:column;grid-area:date;justify-content:flex-end;align-items:flex-end;gap:5px;display:flex}.portfolio .case-date time,.portfolio .case-date b{color:#42596a;letter-spacing:.065em;text-transform:uppercase;white-space:nowrap;background:0 0;border:0;border-radius:0;align-items:center;gap:8px;padding:0;font-size:.6875rem;font-weight:750;line-height:1.2;display:inline-flex}.portfolio .case-tags span{color:#006cbe;background:#0078d411;border-color:#0078d46b;border-radius:99px;padding:4px 8px;font-size:.65rem;line-height:1.2}.portfolio .case-project-summary .case-tags{gap:5px}.portfolio .case-project-summary h4{margin-bottom:7px}.portfolio .case-project-summary .case-tech-groups{gap:8px}.portfolio .case-columns h4{font-size:.8125rem}.portfolio .case-columns{margin-top:20px;padding-top:15px}.portfolio .case-columns ul{padding-left:0;font-size:.8125rem;line-height:1.6;list-style:none}.portfolio .case-columns li{padding-left:18px;position:relative}.portfolio .case-columns li:before{color:var(--fancy-teal);text-align:center;background:0 0;width:12px;height:auto;font-size:.8rem;font-weight:800;line-height:1.6;position:absolute;top:0;left:0}.portfolio .non-dynamics-project .case-columns li:before{color:#d83b01}.portfolio .case-study .case-columns li:before{content:"✔";font-size:.72rem;line-height:1.8}.portfolio .non-dynamics-project .case-products span,.portfolio .non-dynamics-project .case-tags span{color:#b83200;background:#d83b0111;border-color:#d83b016b}.portfolio .non-dynamics-project .case-role,.portfolio .non-dynamics-project .project-emphasis,.portfolio .non-dynamics-project .case-date b{color:#b83200}.portfolio .portfolio-footer{background:var(--fancy-ink)}@media (width<=1000px){.portfolio .portfolio-nav{width:calc(100% - 32px)}.portfolio .portfolio-hero{gap:0 42px}.portfolio .experience-cards{margin-left:0}.portfolio .case-meta{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"number title"".products"".date";align-items:flex-start}.portfolio .case-meta>.case-date{align-items:flex-start}}@media (width<=680px){.portfolio .portfolio-nav{border-radius:12px;width:calc(100% - 20px);margin-top:8px;top:8px}.portfolio .about-section:before{display:none}.portfolio .portfolio-hero{padding-top:58px}.portfolio .portfolio-hero h1{font-size:clamp(3.2rem,17vw,4.5rem)}.portfolio .hero-summary{border-left:0;border-top:2px solid var(--fancy-coral);padding-top:16px;padding-left:0}.portfolio .portfolio-stats{border-radius:9px}.portfolio .portfolio-stats div{flex-direction:column;align-items:flex-start;gap:6px;min-height:112px;padding:20px}.portfolio .portfolio-stats span{max-width:none}.portfolio .hero-details,.portfolio .hero-contact-list{flex-direction:column;align-items:flex-start}.portfolio .hero-languages{flex-wrap:wrap;width:100%;margin-left:0}.portfolio .portfolio-section .section-intro h2{font-size:2.35rem}.portfolio .portfolio-skill-grid article{grid-template-columns:1fr;gap:14px;min-height:0;padding-block:20px}.portfolio .portfolio-skill-grid article:before{top:23px}.portfolio .experience-cards article{grid-template-columns:64px 1fr;padding-left:24px;display:grid}.portfolio .case-study,.portfolio .case-study.featured,.portfolio .case-study.independent,.portfolio .case-study.early-career{border-radius:10px;padding:28px 22px}.portfolio .case-studies{padding-left:0;margin-left:0!important}}@media (prefers-reduced-motion:reduce){.portfolio *,.portfolio :before,.portfolio :after{scroll-behavior:auto!important;transition:none!important}}.portfolio .portfolio-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#f8fafb;border:0;border-bottom:1px solid #cad7e0;border-radius:0;width:100%;max-width:none;height:60px;margin:0;padding-inline:max(24px,50vw - 600px);top:0;box-shadow:0 5px 18px #10233712}.portfolio .portfolio-nav:before{display:none}@media (width<=1000px){.portfolio .portfolio-nav{width:100%}}@media (width<=680px){.portfolio .portfolio-nav{border-radius:0;width:100%;margin-top:0;top:0}}@media (width>=681px){.portfolio .portfolio-hero{border-bottom:3px solid var(--fancy-teal);box-sizing:border-box;padding-inline:max(24px,50vw - 600px);grid-template:"left content"minmax(0,1fr)"left details"/340px minmax(0,1fr);column-gap:58px;width:100%;max-width:none;min-height:480px;margin-inline:0;padding-top:12px}.portfolio .skills-showcase{box-sizing:border-box;width:100%;max-width:none;margin-inline:0;padding-inline:max(24px,50vw - 600px)}.portfolio .photo-frame{flex:1;width:340px}.portfolio .photo-frame:before{width:320px;height:320px;left:8px}.portfolio .hero-content{align-self:end;padding-bottom:18px}.portfolio .hero-details{border-top:0;align-self:stretch;min-height:86px;margin-top:0;padding-top:0}.portfolio .hero-contact-panel{box-shadow:none;background:0 0;border:0;border-radius:0;transform:none}.portfolio .hero-visual{border-bottom:0;flex:1;min-height:0;margin-top:0}}@media (width>=1001px){.portfolio .portfolio-hero{grid-template-columns:340px minmax(0,1fr);column-gap:48px}.portfolio .hero-left-highlights{z-index:2;width:100%;height:155px;margin-bottom:12px;position:relative}.portfolio .hero-left-highlights .portfolio-stats{box-sizing:border-box;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-rows:54px 38px 38px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;padding:0;display:grid}.portfolio .hero-left-highlights .portfolio-stats div{background:linear-gradient(135deg,#fffffffa,#ecf6fceb);border:1px solid #0078d442;border-radius:9px;justify-content:flex-start;gap:6px;min-width:0;padding:7px 11px;box-shadow:0 5px 14px #1f48660e}.portfolio .hero-left-highlights .portfolio-stats div:first-child{text-align:left;background:linear-gradient(145deg,#0078d421,#eff8fdeb);border-color:#0078d442;flex-direction:row;grid-area:1/1/auto/-1;justify-content:center;align-items:center;padding:10px 16px}.portfolio .hero-left-highlights .portfolio-stats div:nth-child(2){grid-area:2/1}.portfolio .hero-left-highlights .portfolio-stats div:nth-child(3){grid-area:2/2}.portfolio .hero-left-highlights .portfolio-stats div:nth-child(4){grid-area:3/1}.portfolio .hero-left-highlights .portfolio-stats div:nth-child(5){grid-area:3/2}.portfolio .hero-left-highlights .portfolio-stats div:last-child{background:linear-gradient(135deg,#fffffffa,#f2f7faf0);border:1px solid #0078d442;border-radius:9px}.portfolio .hero-left-highlights .portfolio-stats strong{min-width:28px;font-size:1rem}.portfolio .hero-left-highlights .portfolio-stats svg{color:var(--fancy-teal);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;flex:none;width:17px;height:17px}.portfolio .hero-left-highlights .portfolio-stats div:first-child strong{font-size:1.85rem;line-height:.9}.portfolio .hero-left-highlights .portfolio-stats div:first-child svg{width:20px;height:20px;position:static}.portfolio .hero-left-highlights .portfolio-stats div:nth-child(4) svg{width:19px;height:19px;margin-inline:-1px}.portfolio .hero-left-highlights .portfolio-stats span{font-size:.62rem;line-height:1.25}.portfolio .hero-left-highlights .portfolio-stats div:first-child span{max-width:none;font-size:.66rem;line-height:1.25}.portfolio .hero-contact-details{align-items:flex-start}.portfolio .hero-contact-details .hero-contact-panel{width:100%}.portfolio .hero-contact-details .hero-contact-list{background:0 0;flex-wrap:wrap;align-items:center;gap:7px;padding:0;display:flex}.portfolio .hero-contact-details .hero-contact-list .hero-detail-item{gap:6px;display:inline-flex}.portfolio .hero-contact-details .hero-contact-list .hero-detail-item>span{flex-direction:row;align-items:baseline;gap:5px;display:inline-flex}.portfolio .hero-contact-details .hero-contact-list .hero-detail-item svg{background:0 0;width:16px;height:16px;padding:0}.portfolio .experience-cards{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:64px;gap:0 120px;margin-left:0;display:grid;position:relative}.portfolio .experience-cards:before{content:"";background:#0078d452;width:1px;position:absolute;top:8px;bottom:28px;left:50%;transform:translate(-50%)}.portfolio .experience-cards article{box-sizing:border-box;z-index:1;background:#ffffff94;border:1px solid #1023371f;border-radius:10px;grid-template-columns:minmax(0,1fr);align-self:start;min-height:97px;padding:12px 14px;box-shadow:0 8px 22px #19374e0e}.portfolio .experience-cards article:nth-child(odd):not(:first-child){transform:translateY(12px)}.portfolio .experience-cards article:nth-child(odd)>div{grid-area:1/1}.portfolio .experience-cards article>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:14px;display:grid}.portfolio .experience-cards article>div>span{white-space:nowrap;grid-area:1/2}.portfolio .experience-cards article h3{grid-area:1/1;margin:0}.portfolio .experience-cards article p{grid-area:2/1/auto/-1;margin-top:7px}.portfolio .experience-cards article:after{content:"";background:#0078d452;width:22px;height:1px;display:block;position:absolute;top:50%;left:auto;right:-22px;transform:translateY(-50%)}.portfolio .experience-cards article:before{display:none}.portfolio .experience-cards article:nth-child(2n):after{left:-22px;right:auto}.portfolio .experience-cards article>time{box-sizing:border-box;color:#315f7d;white-space:nowrap;z-index:3;background:#eef1ed;border:1px solid #315f7d4d;border-radius:99px;justify-content:center;align-self:start;width:max-content;padding:5px 10px;display:inline-flex;position:absolute;top:50%;left:calc(100% + 60px);right:auto;transform:translate(-50%,-50%);box-shadow:0 0 0 7px #eef1ed}.portfolio .experience-cards article:nth-child(2n)>time{left:-60px;right:auto}}.portfolio .portfolio-hero h1,.portfolio .portfolio-hero h1 span{font-size:clamp(3.25rem,5.7vw,5.25rem);line-height:.94}.portfolio .portfolio-stats div,.portfolio .portfolio-stats div:nth-child(2n){background:linear-gradient(135deg,#fbfcfd,#eef4f7)}.portfolio .portfolio-stats{box-shadow:none;background:0 0;border:0;border-radius:0;gap:7px;width:auto;margin-bottom:0;display:flex;overflow:visible}.portfolio .portfolio-stats div{box-shadow:none;background:#0078d40f;border:1px solid #0078d429;border-radius:99px;align-items:center;gap:5px;min-height:0;padding:7px 10px;display:inline-flex;position:relative}.portfolio .case-date time{color:#536b7d}.portfolio .case-date b{color:var(--fancy-teal)}.portfolio .case-date svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none;width:13px;height:13px;display:block}.portfolio .portfolio-stats strong{letter-spacing:-.03em;font-size:.9rem}.portfolio .portfolio-stats span{letter-spacing:.065em;text-transform:uppercase;max-width:none;font-size:.66rem;font-weight:700;line-height:1}.portfolio .portfolio-stats div:before{display:none}@media (width>=681px) and (width<=1100px){.portfolio .portfolio-hero{grid-template:"content content""details details""visual stats"/minmax(260px,340px) minmax(0,1fr);column-gap:32px}.portfolio .hero-content{padding-bottom:34px}.portfolio .hero-left-column{display:contents}.portfolio .hero-left-highlights{grid-area:stats;place-self:center start;width:min(100%,380px);height:auto;margin-bottom:0}.portfolio .hero-left-highlights .portfolio-stats{grid-template-rows:none;grid-template-columns:minmax(0,1fr);gap:5px;width:100%;display:grid}.portfolio .hero-left-highlights .portfolio-stats div,.portfolio .hero-left-highlights .portfolio-stats div:first-child,.portfolio .hero-left-highlights .portfolio-stats div:last-child{box-sizing:border-box;text-align:left;background:linear-gradient(135deg,#fbfcfd,#eef4f7);border:1px solid #0078d42e;border-radius:9px;flex-direction:row;grid-area:auto;justify-content:flex-start;align-items:center;min-width:0;min-height:30px;padding:5px 9px;display:flex}.portfolio .hero-left-highlights .portfolio-stats div:first-child{grid-column:auto}.portfolio .hero-left-highlights .portfolio-stats div:nth-child(2),.portfolio .hero-left-highlights .portfolio-stats div:nth-child(3),.portfolio .hero-left-highlights .portfolio-stats div:nth-child(4){grid-area:auto}.portfolio .hero-left-highlights .portfolio-stats svg,.portfolio .hero-left-highlights .portfolio-stats div:nth-child(4) svg{color:var(--fancy-teal);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;flex:0 0 18px;width:18px;height:18px;margin:0}.portfolio .hero-left-highlights .portfolio-stats div:first-child svg{position:static}.portfolio .hero-left-highlights .portfolio-stats strong,.portfolio .hero-left-highlights .portfolio-stats div:first-child strong{font-size:1rem;line-height:1.1}.portfolio .hero-left-highlights .portfolio-stats span{white-space:normal;line-height:1.15}.portfolio .hero-visual{grid-area:visual;align-self:end;width:min(340px,100%)}.portfolio .hero-details{grid-area:details;align-self:stretch;margin-bottom:24px}.portfolio .hero-contact-details .hero-contact-list{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.portfolio .hero-contact-details .hero-contact-list .hero-detail-item{background:#0078d40f;border:1px solid #0078d429;border-radius:99px;gap:6px;padding:6px 9px;display:inline-flex}.portfolio .hero-contact-details .hero-contact-list .hero-detail-item>span{flex-direction:row;align-items:baseline;gap:5px;display:inline-flex}.portfolio .hero-contact-details .hero-contact-list .hero-detail-item svg{background:0 0;width:16px;height:16px;padding:0}}@media (width>=681px) and (width<=800px){.portfolio .portfolio-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"content""details""visual""stats";column-gap:0}.portfolio .hero-left-highlights{justify-self:center;width:min(100%,560px);margin-top:16px}.portfolio .hero-left-highlights .portfolio-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio .hero-left-highlights .portfolio-stats div:first-child{grid-column:1/-1}}@media (width<=680px){.portfolio .portfolio-hero{grid-template-areas:"left""content""details"}.portfolio .hero-details{border-top:0;padding-block:18px}.portfolio .hero-visual{border-bottom:0;min-height:0}.portfolio .portfolio-hero{border-bottom:3px solid var(--fancy-teal)}.portfolio .hero-language-group{align-items:flex-start;margin-left:0}.portfolio .portfolio-stats{flex-wrap:wrap}}.portfolio .portfolio-stats div:last-child{box-shadow:none;border:1px solid #0078d429;border-radius:99px}.portfolio .portfolio-footer{color:var(--fancy-ink);background:linear-gradient(135deg,#eef4f7,#e5edf2);border-top:1px solid #10233724}.portfolio .portfolio-footer strong{color:var(--fancy-ink)}.portfolio .portfolio-footer a,.portfolio .portfolio-footer span{color:#5b6f80}.portfolio .portfolio-footer a:hover{color:var(--fancy-teal)}.portfolio .hero-content>.hero-contact-panel{border-top:0}.portfolio .hero-contact-button{cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.contact-modal{z-index:1000;background:#0a1b2bb8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.contact-modal>section{background:#fff;border-radius:12px;width:100%;max-width:560px;max-height:calc(100vh - 40px);padding:36px;position:relative;overflow-y:auto;box-shadow:0 24px 80px #00000047}.contact-modal h2{color:var(--fancy-ink);margin:0 0 24px}.contact-modal form{gap:16px;display:grid}.contact-modal label{color:#536b7d;gap:7px;font-size:.76rem;font-weight:750;display:grid}.contact-modal input,.contact-modal textarea{color:var(--fancy-ink);font:inherit;resize:vertical;border:1px solid #b8c8d3;border-radius:6px;padding:11px 12px}.contact-modal input:focus,.contact-modal textarea:focus{border-color:var(--fancy-teal);outline:2px solid #19a7a02e}.contact-modal form>button,.contact-success button{background:var(--fancy-teal);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:6px;justify-self:start;padding:12px 18px;font-weight:750}.contact-modal form>button:disabled{cursor:wait;opacity:.55}.contact-close{color:#536b7d;cursor:pointer;background:0 0;border:0;padding:8px;font-size:1.8rem;line-height:1;position:absolute;top:12px;right:14px}.contact-honeypot{position:absolute;left:-10000px}.contact-verification{color:#536b7d;background:#f4f7fa;border:1px solid #cbd7e0;border-radius:6px;align-items:center;gap:9px;min-height:48px;padding:10px 12px;font-size:.76rem;display:flex}.contact-verification span{background:#dfe8ee;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.contact-verification.verified{color:#246b43;background:#edf8f2;border-color:#9bcdb0}.contact-verification.verified span{background:#ccebd8}.contact-error{color:#b42318;margin:-5px 0 0;font-size:.82rem}.contact-success{color:#536b7d}.contact-success strong{color:var(--fancy-ink);font-size:1.1rem}@media (width<=520px){.contact-modal{padding:10px}.contact-modal>section{max-height:calc(100vh - 20px);padding:28px 20px}}@media (width<=680px){.portfolio .hero-left-column,.portfolio .hero-left-highlights{width:100%;height:auto;margin-bottom:0}.portfolio .portfolio-hero{grid-template-areas:"content""details""visual""stats"}.portfolio .hero-left-column{display:contents}.portfolio .hero-left-highlights{grid-area:stats;justify-self:stretch}.portfolio .hero-visual{grid-area:visual}.portfolio .hero-details{grid-area:details}.portfolio .hero-left-highlights .portfolio-stats{grid-template-columns:minmax(0,1fr);gap:6px;width:100%;margin:0;padding:0;display:grid}.portfolio .hero-left-highlights .portfolio-stats div,.portfolio .hero-left-highlights .portfolio-stats div:first-child,.portfolio .hero-left-highlights .portfolio-stats div:last-child{box-sizing:border-box;text-align:left;background:linear-gradient(135deg,#fbfcfd,#eef4f7);border:1px solid #0078d42e;border-radius:7px;flex-direction:row;grid-column:auto;align-items:center;gap:7px;min-height:40px;padding:7px 10px;display:flex}.portfolio .hero-left-highlights .portfolio-stats div:first-child,.portfolio .hero-left-highlights .portfolio-stats div:last-child{grid-column:auto}.portfolio .hero-left-highlights .portfolio-stats svg{color:var(--fancy-teal);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;flex:0 0 18px;grid-row:auto;width:18px;height:18px}.portfolio .hero-left-highlights .portfolio-stats strong,.portfolio .hero-left-highlights .portfolio-stats div:first-child strong{min-width:0;font-size:1rem;line-height:1.1}.portfolio .hero-left-highlights .portfolio-stats span,.portfolio .hero-left-highlights .portfolio-stats div:first-child span{max-width:none;font-size:.58rem;line-height:1.25}.portfolio .hero-visual{justify-content:center;align-self:center;width:100%;margin-inline:auto}.portfolio .photo-frame{margin-inline:auto}}.portfolio .portfolio-hero{padding-top:0}.portfolio .photo-frame{aspect-ratio:373/291;width:min(340px,100%);height:auto;min-height:0;overflow:hidden}.portfolio .photo-frame img{object-fit:contain;object-position:center bottom;width:100%;height:100%;display:block;position:static;transform:none}@media (width<=680px){.portfolio .photo-frame{width:min(300px,100%);height:auto;min-height:0}}@media (width>=1101px){.portfolio .hero-polished-original .hero-left-column{box-sizing:border-box;align-self:stretch;padding-top:43px}.portfolio .hero-polished-original .hero-visual{flex:1;align-items:flex-end;min-height:0}.portfolio .hero-polished-original .hero-details{min-height:70px}}@media (width>=681px){.portfolio .hero-polished-original .hero-left-highlights{height:132px;margin:0}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats{background:linear-gradient(145deg,#0787e5,#006fc4);border:1px solid #00599e33;border-radius:14px;grid-template-rows:repeat(2,66px);grid-template-columns:1.18fr 1fr 1fr;gap:0;height:132px;padding:0;display:grid;overflow:hidden;box-shadow:0 12px 28px #00599e33}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:last-child{box-shadow:none;box-sizing:border-box;text-align:center;background:0 0;border:1px solid #ffffff1c;border-top:0;border-left:0;border-radius:0;grid-template-rows:auto auto;grid-template-columns:auto auto;place-content:center;align-items:center;gap:2px 7px;min-height:0;padding:12px 10px;display:grid;position:relative}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child{background:linear-gradient(135deg,#ffffff24,#ffffff09);border-bottom:0;border-right:1px solid #ffffff24;grid-area:1/1/-1;align-content:center;padding:18px 14px}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(2){grid-area:1/2}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(3){border-right:0;grid-area:1/3}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(4){border-bottom:0;grid-area:2/2}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(5){border-bottom:0;border-right:0;grid-area:2/3}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats svg,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child svg{color:#fff;filter:drop-shadow(0 1px 1px #00285033);opacity:1;stroke-width:2.2px;width:15px;height:15px;padding:0;display:block;position:absolute;top:9px;left:9px}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats strong,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child strong{color:#fff;grid-area:1/1/auto/-1;align-self:center;min-width:0;font-size:1.05rem;line-height:1}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child strong{color:#fff;font-size:2.2rem}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats span,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child span{color:#fff;letter-spacing:.055em;text-transform:uppercase;grid-area:2/1/auto/-1;max-width:none;margin-top:3px;font-size:.57rem;font-weight:750;line-height:1.2}}@media (width>=681px) and (width<=1100px){.portfolio .portfolio-hero.hero-polished-original{grid-template:"content""details""left"/minmax(0,1fr);column-gap:0}.portfolio .hero-polished-original .hero-left-column{grid-area:left;justify-self:center;align-items:center;width:min(100%,560px);display:flex}.portfolio .hero-polished-original .hero-left-highlights{width:min(100%,560px);margin-top:8px}.portfolio .hero-polished-original .hero-visual{width:min(340px,100%)}}@media (width<=680px){.portfolio .portfolio-hero.hero-polished-original{box-sizing:border-box;grid-template-columns:minmax(0,1fr);grid-template-areas:"content""details""left";gap:22px;width:100%;max-width:100%;margin-inline:0;padding:32px 18px 0;display:grid}.portfolio .hero-polished-original .hero-content{grid-area:content;padding-bottom:0}.portfolio .hero-polished-original .hero-details{grid-area:details;margin:0;padding:0}.portfolio .hero-polished-original .hero-contact-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;width:100%;display:grid}.portfolio .hero-polished-original .hero-contact-list .hero-detail-item{box-sizing:border-box;width:100%;min-width:0}.portfolio .hero-polished-original .hero-left-column{flex-direction:column;grid-area:left;align-items:center;width:100%;display:flex}.portfolio .hero-polished-original .hero-left-highlights{order:0;width:100%;height:auto;margin:0}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats{background:linear-gradient(145deg,#0787e5,#006fc4);border:1px solid #00599e33;border-radius:14px;grid-template-rows:78px 66px 66px;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;width:100%;height:210px;padding:0;display:grid;overflow:hidden;box-shadow:0 12px 28px #00599e33}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:last-child{box-shadow:none;box-sizing:border-box;text-align:center;background:0 0;border:1px solid #ffffff1c;border-top:0;border-left:0;border-radius:0;grid-area:auto;grid-template-rows:auto auto;grid-template-columns:1fr;place-content:center;align-items:center;gap:3px;min-height:0;padding:10px;display:grid;position:relative}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child{background:linear-gradient(135deg,#ffffff24,#ffffff09);border-right:0;grid-area:1/1/auto/-1}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(2){grid-area:2/1}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(3){border-right:0;grid-area:2/2}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(4){border-bottom:0;grid-area:3/1}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:nth-child(5){border-bottom:0;border-right:0;grid-area:3/2}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats svg,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child svg{color:#fff;width:15px;height:15px;padding:0;display:block;position:absolute;top:9px;left:9px}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats strong,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child strong{color:#fff;grid-area:1/1;font-size:1.05rem;line-height:1}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child strong{font-size:1.8rem}.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats span,.portfolio .hero-polished-original .hero-left-highlights .portfolio-stats div:first-child span{color:#fff;letter-spacing:.055em;grid-area:2/1;max-width:none;font-size:.56rem;font-weight:750;line-height:1.2}.portfolio .hero-polished-original .hero-visual{order:1;width:min(300px,100%)}}.structured-admin{color:#102337;background:#f4f7fa}.structured-admin .admin-editor{border-radius:12px;padding:30px}.admin-tabs{border-bottom:1px solid #d8e1e8;gap:5px;margin:28px 0 24px;display:flex;overflow-x:auto}.admin-tabs button{color:#5c6b7a;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:13px 18px;font:700 .78rem Manrope}.admin-tabs button.active{color:#0078d4;border-bottom-color:#0078d4}.admin-tabs button span{background:#e5eef5;border-radius:99px;margin-left:8px;padding:3px 7px;font-size:.62rem}.admin-tab-content{min-height:440px}.admin-panel-grid{gap:20px;display:grid}.admin-subgrid{background:#f9fbfc;border:1px solid #d8e1e8;border-radius:9px;padding:22px}.admin-subgrid h3{margin:0 0 18px;font-size:1rem}.admin-subgrid-title{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.admin-subgrid-title h3{margin:0}.admin-subgrid-title button{color:#006cbe;cursor:pointer;background:#e6f2fb;border:1px solid #9bc9ed;border-radius:6px;padding:8px 11px;font-size:.7rem;font-weight:750}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-field{flex-direction:column;gap:6px;display:flex}.admin-field.wide{grid-column:1/-1}.admin-field>span{color:#536475;letter-spacing:.06em;text-transform:uppercase;font-size:.64rem;font-weight:750}.admin-field input,.admin-field textarea,.admin-field select,.admin-grid-row input,.admin-grid-row select{color:#102337;background:#fff;border:1px solid #cbd7e0;border-radius:5px;width:100%;padding:10px 11px;font:500 .78rem DM Sans}.admin-field textarea{resize:vertical;min-height:100px;line-height:1.5}.admin-field input:focus,.admin-field textarea:focus,.admin-field select:focus,.admin-grid-row input:focus,.admin-grid-row select:focus{border-color:#0078d4;outline:2px solid #0078d421}.admin-table-grid{gap:7px;display:grid}.admin-grid-row{grid-template-columns:110px 150px minmax(220px,1fr) minmax(280px,1.5fr) 34px;align-items:center;gap:7px;display:grid}.admin-table-grid.two-columns .admin-grid-row{grid-template-columns:1fr 1fr 34px}.admin-table-grid.certification-grid .admin-grid-row{grid-template-columns:90px 1.4fr .8fr 1.4fr 34px}.admin-table-grid.skills-grid .admin-grid-row{grid-template-columns:1.2fr 140px 1fr 110px 34px}.admin-checkbox{align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.admin-checkbox input{width:auto}.admin-grid-row .remove{color:#b83200;cursor:pointer;background:0 0;border:1px solid #e5b6aa;border-radius:5px;justify-content:center;align-items:center;height:34px;font-size:1.1rem;display:flex}.admin-project-grid{gap:12px;display:grid}.admin-project{background:#fff;border:1px solid #d6e0e7;border-radius:8px;overflow:hidden}.admin-project summary{cursor:pointer;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:15px 18px;list-style:none;display:grid}.admin-project summary::-webkit-details-marker{display:none}.admin-project summary>span{color:#0078d4;font:750 .75rem Manrope}.admin-project summary strong{font:700 .9rem Manrope}.admin-project summary small{color:#657687}.admin-project[open] summary{background:#edf6fc;border-bottom:1px solid #d6e0e7}.admin-project>.admin-form-grid{padding:20px}.admin-project .button.compact{margin:0 20px 20px;padding:8px 11px}.structured-admin .admin-danger{margin-top:24px}.admin-messages{gap:14px;display:grid}.admin-messages>.admin-subgrid-title span{color:#657687;font-size:.75rem}.admin-messages article{background:#fff;border:1px solid #d6e0e7;border-radius:8px;padding:20px}.admin-messages article header{justify-content:space-between;align-items:start;gap:18px;display:flex}.admin-messages article header div{gap:4px;display:grid}.admin-messages article header a{color:#0078d4;font-size:.78rem}.admin-messages article time{color:#657687;white-space:nowrap;font-size:.72rem}.admin-messages article p{white-space:pre-wrap;margin:18px 0;line-height:1.6}.admin-messages .button.compact{padding:8px 11px}.admin-empty-messages p{color:#657687}@media (width<=900px){.admin-form-grid{grid-template-columns:1fr}.admin-field.wide{grid-column:auto}.admin-grid-row,.admin-table-grid.certification-grid .admin-grid-row,.admin-table-grid.skills-grid .admin-grid-row{border-bottom:1px solid #d8e1e8;grid-template-columns:1fr;padding-bottom:12px}.admin-grid-row .remove{width:40px}.admin-project summary{grid-template-columns:32px 1fr}.admin-project summary small{grid-column:2}.admin-messages article header{flex-direction:column}}
