/* Editorial portfolio refresh. Existing case-study content is retained. */
:root{--paper:#eeeee6;--white:#f7f6f0;--ink:#202b29;--muted:#515d58;--green:#315e4b;--line:#c9d0c5;--serif:Georgia,'Times New Roman',serif}body{background:var(--paper)}.site-header{padding:22px 6%;background:#192925;color:#eff2e7;border-bottom:1px solid #40534a}.brand{letter-spacing:-.02em}.monogram{background:#d0e0b8;color:#21372d;border:0;font-family:Arial,sans-serif;font-weight:700;transform:rotate(-7deg);border-radius:12px}.brand small{letter-spacing:.12em;color:#b5c7b7;font-size:9px}nav{gap:28px}nav a{color:#dce4d5;position:relative}nav a:after{content:'';display:block;height:1px;background:#c0d7a2;transform:scaleX(0);transform-origin:left;transition:transform .2s}nav a:hover:after{transform:scaleX(1)}
.hero{background:#192925;color:#f3f3e8;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:7%;padding:75px 6% 80px;position:relative;isolation:isolate;overflow:hidden;align-items:center}.hero:before{content:'';position:absolute;width:520px;height:520px;border:1px solid #3d5547;border-radius:50%;right:-150px;top:80px;z-index:-1}.hero-main{padding-bottom:20px}.hero-main:before{content:'JORDAN MOON';display:block;font:700 clamp(13px,1.5vw,20px)/1.2 Arial,sans-serif;letter-spacing:.18em;color:#d4dfc1;margin-bottom:30px}.hero .eyebrow{color:#c2d6b3;font-size:10px;letter-spacing:.2em}.hero h1{font-family:Arial,Helvetica,sans-serif;font-weight:600;font-size:clamp(48px,5.8vw,92px);line-height:1.04;letter-spacing:-.065em;max-width:800px;margin-bottom:28px}.hero h1 em{font-family:var(--serif);color:#c9ddae;display:inline-block;line-height:1.12;font-weight:400;letter-spacing:-.055em}.hero-copy{font-size:17px;line-height:1.85;max-width:570px;color:#c5d0c2}.hero .primary-link{background:#c9ddae;color:#1d3328;border:0;border-radius:30px;padding:15px 24px;gap:30px;transition:transform .2s,background .2s}.hero .primary-link:hover{color:#1d3328;background:#e0eccd;transform:translateY(-3px)}.hero-aside{position:relative;padding:0}.portrait{width:100%;max-width:none;aspect-ratio:1;max-height:480px;object-fit:cover;border:0;border-radius:160px 160px 16px 16px;box-shadow:14px 14px 0 #8e9d7c;margin-bottom:36px}.hero-aside>.eyebrow{margin-bottom:8px}.hero-aside ol{display:flex;flex-wrap:wrap;gap:7px}.hero-aside li{border:1px solid #65715e;border-radius:30px;padding:6px 11px;font-size:10px;color:#d6e0cc}.hero-aside li span{display:none}.aside-note{max-width:none;font-size:11px;color:#adbdab;margin:14px 0 0}
.work{background:#eeeee6;padding-top:80px;padding-bottom:80px}.section-heading h2{font-family:Arial,sans-serif;font-size:clamp(38px,4.3vw,65px);font-weight:600;letter-spacing:-.055em;line-height:1.05}.section-heading .eyebrow{margin-bottom:15px}.section-heading>p{font-size:13px;line-height:1.75}.filters{margin-top:30px;gap:7px}.filters button{background:transparent;border:1px solid #bdc7b8;border-radius:24px;padding:10px 16px;font-size:11px}.filters button[aria-pressed=true]{background:#233f32;border-color:#233f32}.filters button:hover{background:#dce4d1}.filters button[aria-pressed=true]:hover{background:#315740}.filter-status{margin:18px 0 28px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.project-row{position:relative;display:flex;flex-direction:column;gap:0;border:1px solid #d4d8cb;border-radius:16px;padding:0;background:#f8f7f0;overflow:hidden;box-shadow:0 4px 0 rgba(31,56,39,.025);transition:transform .22s,box-shadow .22s}.project-row:hover{background:#f8f7f0;transform:translateY(-5px);box-shadow:0 18px 30px rgba(31,56,39,.09)}.project-cover{display:block;overflow:hidden;background:#c3d6c9}.project-cover img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;transition:transform .5s}.project-cover:hover img{transform:scale(1.035)}.project-index{position:absolute;top:15px;right:15px;color:#203b2d;background:#f7f9ed;border-radius:50%;height:38px;width:38px;display:flex;align-items:center;justify-content:center;font:600 13px Arial,sans-serif;box-shadow:0 2px 6px #19342818}.project-content{padding:26px 28px 22px;flex:1}.project-content .eyebrow{font-size:9px;line-height:1.6;letter-spacing:.12em;color:#56705a}.project-content h3{font-family:Arial,sans-serif;font-size:clamp(23px,2.2vw,32px);font-weight:600;letter-spacing:-.035em;line-height:1.17;margin:12px 0 16px}.project-content h3 span{display:inline-block;margin-left:10px;font-size:20px;color:#557b5c}.project-content>p:not(.eyebrow){font-size:13px;line-height:1.8;margin-bottom:20px;color:#59645c}.skills{gap:7px;font-size:10px}.skills span{background:#e8ecdf;padding:5px 9px;border-radius:4px;color:#486346}.case-link{margin:0 28px 25px;padding:12px 0 0;border-top:1px solid #d7ddce;align-self:stretch;justify-self:auto;display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:600}.case-link span{width:29px;height:29px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#263f32;color:#e6edda;margin-left:0}.case-link:hover{text-decoration:none;color:#3f6548}
.experience{background:#deddeb;padding-top:80px;padding-bottom:80px}.experience .eyebrow{color:#585c78}.outcomes{gap:20px}.outcome{background:#f5f3f7;border:0;border-radius:10px;padding:25px}.outcome strong{font-family:Arial,sans-serif;font-size:clamp(25px,3vw,44px);font-weight:600;letter-spacing:-.055em;color:#3f4262}.outcome small{color:#5d6071}.outcome p{font-size:13px}.outcome-note{color:#686a7b;font-size:10px}.experience-row{grid-template-columns:220px 1fr;border-top:1px solid #bdbed1;padding:35px 0}.experience-meta h3{font-family:Arial,sans-serif;font-size:25px;font-weight:600;letter-spacing:-.035em}.experience-row h4{color:#4a4d70}.experience-row p,.experience-row li{color:#50556a;line-height:1.85}.background{background:#e9ecdf;padding-top:80px;padding-bottom:80px;border-top:0;gap:7%}.background h2{font-family:Arial,sans-serif;font-size:44px;font-weight:600;letter-spacing:-.05em;line-height:1.08}.background dl>div{border-top-color:#c3ceb7}.background dt{color:#486243}.background dd{line-height:1.8}.background-copy>p{font-size:15px}.background .eyebrow{color:#486243}footer{background:#192925;padding-top:38px;padding-bottom:38px}footer strong{font-size:20px;letter-spacing:-.03em}footer p{color:#adbdab}
.case-hero{background:#192925;padding:45px 6% 65px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:6%;align-items:center;position:relative;overflow:hidden}.case-heading{min-width:0}.case-hero .eyebrow{color:#bad2a8;line-height:1.7;font-size:10px}.back-link{font-size:11px;color:#b7c8af;margin-bottom:35px}.case-hero h1{font-family:Arial,sans-serif;font-weight:600;font-size:clamp(38px,4.8vw,72px);letter-spacing:-.055em;line-height:1.04}.case-intro{font-size:16px;line-height:1.8;color:#c5d0c2}.case-hero .course{font-size:10px;color:#adbdab}.case-cover{transform:rotate(2deg);border:8px solid #455849;border-radius:12px;box-shadow:15px 15px 0 #283f31;overflow:hidden}.case-cover img{display:block;width:100%;height:auto}.case-layout{background:#f5f4ee;grid-template-columns:200px minmax(0,850px);gap:8%;padding-top:70px}.case-sidebar{border-top:2px solid #aac195;padding-top:20px}.case-sidebar .eyebrow{font-size:9px;letter-spacing:.14em}.case-sidebar li{font-size:12px}.case-body h2{font-family:Arial,sans-serif;font-size:28px;font-weight:600;letter-spacing:-.035em}.case-body p,.case-body li{line-height:1.85;color:#525f56}.process-steps>li{border-left-color:#c5d3bb}.process-steps>li:before{background:#345940;color:#f2f5e9}.process-steps h3{font-size:17px;color:#304b36}.evidence{padding:28px;background:#e3e9d9;border:0;border-radius:12px}.case-body .evidence h2{font-size:24px}.project-visual{background:#e9eddf;border-color:#c7d3bc}.visual-hub,.visual-trigger{background:#293f34}.visual-hub p{color:#e2e9d7}.visual-hub h3{color:#e4edda}.visual-card{border-color:#ced8c4;background:#f9faf3}.visual-table thead{background:#293f34}.visual-table tbody tr:nth-child(even){background:#dfe6d5}.roadmap-phase{background:#3c6756}.roadmap-phase:nth-child(2){background:#5b6f60}.roadmap-phase:nth-child(3){background:#77816a}.project-number strong{font-family:Arial,sans-serif;letter-spacing:-.045em;font-weight:600;color:#3a5e40}.project-numbers{border-top-color:#cad3c2}.scope-note{border-top-color:#cad3c2}.scope-note p{font-size:12px}.next-project{background:#deddeb;padding-top:55px;padding-bottom:55px}.next-project h2{font-family:Arial,sans-serif;font-size:38px;font-weight:500;letter-spacing:-.04em}.next-project .eyebrow{color:#62627b}
@media(min-width:1600px){.hero,.work,.experience,.background,.case-hero,.case-layout,.next-project,footer{padding-left:max(6%,calc((100vw - 1408px)/2));padding-right:max(6%,calc((100vw - 1408px)/2))}}
@media(max-width:1000px){.hero{grid-template-columns:1.1fr .9fr;gap:6%;padding-top:60px}.hero h1{font-size:59px}.portrait{border-radius:120px 120px 12px 12px}.hero-copy{font-size:15px}.project-content{padding:22px}.case-link{margin-left:22px;margin-right:22px}.project-list{gap:20px}.case-layout{grid-template-columns:150px minmax(0,1fr);gap:6%}.case-hero{gap:5%}.case-hero h1{font-size:47px}.case-intro{font-size:14px}.case-cover{border-width:5px}.background h2{font-size:38px}.outcomes{gap:12px}.outcome{padding:20px}.experience-row{grid-template-columns:180px 1fr}}
@media(max-width:700px){.site-header{padding:20px 6%;align-items:center}.brand{font-size:14px}.brand small{font-size:8px}.monogram{width:34px;height:34px}.site-header nav{gap:12px;max-width:150px;font-size:10px}.hero{grid-template-columns:1fr;gap:35px;padding:48px 6% 50px}.hero-main{padding:0}.hero-main:before{font-size:14px;margin-bottom:22px}.hero h1{font-size:clamp(45px,9.5vw,66px)}.hero .eyebrow{font-size:9px}.hero-copy{font-size:15px;line-height:1.8}.hero .primary-link{font-size:12px}.hero-aside{max-width:430px;width:100%;margin:auto}.portrait{max-height:none;aspect-ratio:1.12;object-position:center 42%;border-radius:120px 120px 12px 12px;box-shadow:9px 9px 0 #8e9d7c;margin-bottom:26px}.hero-aside ol{display:flex}.hero-aside li{font-size:9px}.hero-aside>.eyebrow{font-size:9px}.hero:before{right:-220px;top:450px}.work,.experience,.background{padding-top:50px;padding-bottom:50px}.section-heading h2{font-size:42px}.section-heading>p{font-size:12px}.project-list{grid-template-columns:1fr;gap:24px}.project-content{padding:24px}.project-content h3{font-size:28px}.project-content>p:not(.eyebrow){font-size:14px}.case-link{margin-left:24px;margin-right:24px}.project-cover img{aspect-ratio:8/4.6;object-fit:cover}.filters{gap:6px}.filters button{padding:9px 12px;font-size:10px}.outcomes{grid-template-columns:1fr}.outcome{display:block;padding:22px}.outcome strong{font-size:39px}.outcome p{margin-top:8px}.experience-row{grid-template-columns:1fr;gap:15px}.background{grid-template-columns:1fr;gap:30px}.background h2{font-size:38px}.case-hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:45px;gap:25px}.case-hero h1{font-size:46px}.back-link{margin-bottom:25px}.case-intro{font-size:16px}.case-cover{width:94%;max-width:550px;margin:0 auto;transform:rotate(1deg);box-shadow:8px 8px 0 #283f31}.case-layout{display:flex;padding-top:35px;gap:30px}.case-sidebar{display:grid;padding-top:15px;grid-template-columns:1fr 1fr}.case-sidebar li{font-size:11px}.case-body h2{font-size:27px}.case-body p,.case-body li{font-size:15px}.process-steps{margin-left:10px}.process-steps>li{padding-left:26px!important}.process-steps h3{font-size:17px}.evidence{padding:23px}.next-project h2{font-size:29px}.case-hero .eyebrow{font-size:9px}.project-visual h2{font-size:25px}.visual-card p{font-size:14px}.project-number strong{font-size:33px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header,.hero,.work,.experience,.background,.case-hero,.case-layout,.next-project,footer{background:white!important;color:black!important}.project-list{display:block}.project-row{break-inside:avoid;margin-bottom:20px;box-shadow:none}.project-cover{display:none}.hero{display:block}.portrait{max-width:180px;box-shadow:none}.case-cover{max-width:350px;transform:none;box-shadow:none}.case-hero{display:block}.project-row:hover{transform:none}}
.project-content h3 span{display:none}

nav .linkedin-link{border:1px solid #7d9375;border-radius:20px;padding:6px 12px;white-space:nowrap}nav .linkedin-link:after{display:none}nav .linkedin-link span{margin-left:5px}footer .linkedin-link{display:inline-block;margin-top:16px;color:#d6e5c3;text-decoration:none;font-weight:600}@media(max-width:700px){.site-header nav{max-width:160px;gap:8px 12px}.site-header nav .linkedin-link{padding:3px 9px;font-size:9px}}
/* Independent work uses an amber accent to distinguish it from coursework. */
.collection-label{font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:#536349;margin:26px 0 20px}.personal-projects{margin-top:65px;padding-top:38px;border-top:2px solid #c9a56a}.personal-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.personal-heading h3{font:600 36px/1.1 Arial,sans-serif;letter-spacing:-.04em;margin:0}.personal-heading .eyebrow{color:#795924;margin-bottom:12px}.personal-heading>p{font-size:13px;max-width:350px;color:#685a44}.personal-grid{max-width:100%}.personal-card{display:grid;grid-template-columns:1.1fr 1fr;background:#f4e9d3;border-color:#d7bc8b}.personal-card:hover{background:#f4e9d3}.personal-card .project-cover{grid-column:1;grid-row:1/3;background:#0b1220;display:flex;align-items:center}.personal-card .project-cover img{aspect-ratio:16/9;object-fit:contain}.personal-card .project-content{grid-column:2;padding:32px}.personal-card .case-link{grid-column:2;margin:0 32px 28px;border-top-color:#d5be95}.personal-card .project-index{background:#e0b866;top:14px;right:14px}.personal-card .eyebrow{color:#785724}.personal-card .skills span{background:#e7d4ae;color:#614d2a}.personal-card .case-link span{background:#735526}.personal-hero .eyebrow{color:#e0b866}.personal-hero .case-cover{border-color:#6c5b39;box-shadow:12px 12px 0 #3c3928}.personal-intro{padding:65px 6%;max-width:1000px}.personal-intro .eyebrow{color:#795924}.personal-intro h2{font:600 35px/1.15 Arial,sans-serif;letter-spacing:-.04em}.personal-intro p{color:#525f56;font-size:16px;line-height:1.85}.deck-section{padding:60px 6% 80px;background:#e9dfcb}.deck-section .eyebrow{color:#795924}.deck-section .section-heading h2{font-size:42px}.deck-help{font-size:13px;color:#695b46;margin:24px 0}.deck-viewer{background:#0b1220;border-radius:12px;padding:20px;outline-offset:4px}.deck-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.deck-controls button{font:600 12px Arial,sans-serif;padding:12px 15px;border:1px solid #8b754c;border-radius:25px;background:#e6bc69;color:#17202c;cursor:pointer;min-height:44px}.deck-controls button:disabled{opacity:.35;cursor:default}.deck-controls p{font-size:12px;margin:0;color:#e6dfcf}.deck-stage{background:#0b1220}.deck-slide{margin:0}.deck-slide>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.deck-slide figcaption{font-size:12px;line-height:1.6;color:#d4c4a5;padding:12px 0}.deck-actions{padding:10px 0 20px}.deck-actions a{font-size:12px;color:#e6bc69}.deck-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:3px 3px 10px;scrollbar-color:#aa8548 #0b1220}.deck-thumbnails button{background:#17202c;color:#cad2dd;flex:0 0 130px;border:2px solid transparent;cursor:pointer;padding:4px;border-radius:6px}.deck-thumbnails button[aria-pressed=true]{border-color:#e6bc69}.deck-thumbnails img{display:block;width:100%;height:auto}.deck-thumbnails span{display:block;font-size:11px;padding:5px}.slide-transcript{color:#d4dbe5;border-top:1px solid #354154;padding:12px 0}.slide-transcript summary{font-size:12px}.slide-transcript p{color:#d4dbe5;font-size:13px;line-height:1.7}.deck-thumbnails button:focus-visible,.deck-controls button:focus-visible{outline:3px solid #fff;outline-offset:3px}.deck-viewer:focus-visible{outline:3px solid #795924}
@media(max-width:700px){.personal-heading{display:block}.personal-heading h3{font-size:32px}.personal-heading>p{max-width:none;margin-top:18px}.personal-card{display:flex}.personal-card .project-cover img{aspect-ratio:16/9}.personal-card .project-content{padding:24px}.personal-card .case-link{margin-left:24px;margin-right:24px}.personal-projects{margin-top:45px}.deck-section{padding:40px 4% 50px}.deck-section .section-heading h2{font-size:33px}.deck-viewer{padding:12px;border-radius:8px}.deck-controls{gap:6px}.deck-controls button{font-size:11px;padding:10px 12px}.deck-controls p{font-size:11px}.deck-thumbnails button{flex-basis:95px}.personal-intro{padding:40px 6%}.personal-intro h2{font-size:31px}.personal-hero .case-cover{box-shadow:8px 8px 0 #3c3928}}
/* Neutral slate and navy opening palette. */
.site-header,.hero,.case-hero,footer{background:#172735}.site-header{border-bottom-color:#354b5c}.monogram{background:#d5dfe9;color:#223b50}.brand small{color:#b7c9d9}nav a{color:#e2e8ef}nav a:after{background:#c0d2e2}nav .linkedin-link{border-color:#8499ac}.hero{color:#f3f4f5}.hero:before{border-color:#3d5264}.hero-main:before{color:#c8d6e3}.hero .eyebrow,.hero-aside li span{color:#b5cbdd}.hero h1 em{color:#d0dfec}.hero-copy{color:#c4cfda}.hero .primary-link{background:#d2deea;color:#1c344a}.hero .primary-link:hover{background:#e7eef5;color:#1c344a}.portrait{box-shadow:14px 14px 0 #687f92}.hero-aside li{color:#dde5ed;border-color:#647c90}.aside-note{color:#bacbd9}.case-hero .eyebrow{color:#b5cbdd}.case-intro,.case-hero .course{color:#c4cfda}.back-link{color:#bacbd9}.case-cover{border-color:#536e84;box-shadow:15px 15px 0 #263e51}footer p{color:#bacbd9}footer .linkedin-link{color:#d4e1ed}.personal-hero .eyebrow{color:#e0b866}.personal-hero .case-cover{border-color:#6c5b39;box-shadow:12px 12px 0 #3c3928}.filters button{min-height:44px}.work:has([data-filter="Personal projects"][aria-pressed="true"]) .personal-projects{margin-top:25px}
@media(max-width:700px){.portrait{box-shadow:9px 9px 0 #687f92}.case-cover{box-shadow:8px 8px 0 #263e51}.personal-hero .case-cover{box-shadow:8px 8px 0 #3c3928}}
@media(max-width:360px){.site-header{flex-direction:column;align-items:flex-start;gap:16px}.brand>span:last-child{white-space:nowrap}.site-header nav{max-width:none;width:100%;justify-content:space-between;gap:8px;font-size:10px}.site-header nav .linkedin-link{padding:5px 9px}.hero h1{font-size:43px}.case-hero h1{font-size:41px}}
.work-samples{margin:38px 0 48px;padding-top:28px;border-top:1px solid #c8d2c5}.work-samples>.eyebrow{font-size:10px;color:#51685a}.work-samples-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}.work-sample{margin:0;background:#fdfcf8;border:1px solid #cdd5c9;border-radius:10px;overflow:hidden;min-width:0}.work-sample>a{display:flex;align-items:center;justify-content:center;background:#fff;min-height:190px;padding:10px;border-bottom:1px solid #e0e5da}.work-sample img{display:block;width:100%;height:190px;object-fit:contain}.work-sample figcaption{padding:18px}.work-sample figcaption strong{display:block;font-size:14px;line-height:1.5;color:#2b4534}.case-body .work-sample figcaption p{font-size:12px;line-height:1.8;margin:10px 0 12px}.work-sample figcaption a{display:inline-block;min-height:32px;font-size:11px;font-weight:600;color:#345940}.work-samples-grid:has(>.work-sample:only-child){grid-template-columns:1fr}.work-samples-grid:has(>.work-sample:only-child) img{height:260px}.work-sample>a:hover{background:#f2f5eb}.work-sample a:focus-visible{outline:3px solid #345940;outline-offset:-4px}@media(max-width:640px){.work-samples-grid{grid-template-columns:1fr;gap:18px}.work-sample img{height:200px}.work-samples-grid:has(>.work-sample:only-child) img{height:220px}.work-sample figcaption a{min-height:44px;padding-top:8px}}
body.image-open{overflow:hidden}.image-lightbox{position:fixed;width:min(96vw,1700px);height:92vh;height:92svh;max-width:96vw;max-height:94vh;max-height:94svh;padding:0;border:1px solid #728493;border-radius:12px;background:#132331;color:#f5f7f9;box-shadow:0 20px 100px #0008;overflow:hidden}.image-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}.image-lightbox::backdrop{background:rgba(6,15,23,.85)}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 20px;border-bottom:1px solid #405361}.lightbox-toolbar h2{font:600 15px/1.4 Arial,sans-serif;letter-spacing:0;margin:0;color:#f2f5f8}.lightbox-actions{display:flex;gap:10px;flex-shrink:0}.lightbox-actions button{font:600 12px Arial,sans-serif;min-height:44px;padding:10px 16px;border:1px solid #9eafbd;border-radius:7px;background:#e1eaf1;color:#193348;cursor:pointer}.lightbox-actions button:focus-visible{outline:3px solid #fff;outline-offset:3px}.lightbox-stage{min-height:0;display:flex;align-items:center;justify-content:center;overflow:auto;padding:16px;background:#263744}.lightbox-stage img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;background:white}.lightbox-stage.is-zoomed{display:block}.lightbox-stage.is-zoomed img{width:180%;height:auto;max-width:none;max-height:none;object-fit:initial}@media(max-width:640px){.image-lightbox{width:98vw;max-width:98vw;height:94svh;max-height:94svh;border-radius:8px}.lightbox-toolbar{padding:10px;gap:10px;align-items:flex-start}.lightbox-toolbar h2{font-size:12px;padding-top:5px}.lightbox-actions{gap:6px}.lightbox-actions button{font-size:11px;padding:8px 10px}.lightbox-stage{padding:8px}.lightbox-stage.is-zoomed img{width:250%}}
nav .contact-link{display:inline-flex;align-items:center;gap:7px;border-radius:20px;padding:7px 14px;background:#d5e0ea;color:#1c3448;font-weight:600;white-space:nowrap}nav .contact-link:after{display:none}nav .contact-link span{margin:0}nav .contact-link:hover{background:#eef3f7}@media(max-width:480px){.site-header{flex-direction:column;align-items:flex-start;gap:15px}.brand>span:last-child{white-space:nowrap}.site-header nav{max-width:none;width:100%;justify-content:flex-start;gap:10px 15px;font-size:10px}.site-header nav .linkedin-link{padding:5px 9px;font-size:10px}.site-header nav .contact-link{padding:6px 11px;font-size:10px}}
.hero-personality{font:italic 15px/1.7 Georgia,'Times New Roman',serif;color:#b4c9d9;max-width:510px;margin:18px 0 4px}.hero .primary-link{margin-top:20px}@media(max-width:700px){.hero-personality{font-size:14px;max-width:360px}}
/* Recruiter-facing hierarchy: preserve the palette, portrait and card system. */
.hero h1{font-size:clamp(43px,4.45vw,68px);line-height:1.09;letter-spacing:-.055em}.hero h1 em{letter-spacing:-.055em}.hero .hero-copy{font-size:16px;line-height:1.8}.hero .hero-copy-secondary{font-size:15px;margin-top:12px}.career-strip{font-size:11px;line-height:1.8;color:#d5e0eb;font-weight:600;letter-spacing:.02em;margin:18px 0 8px}.hero-actions{display:flex;flex-wrap:wrap;gap:18px 24px;align-items:center}.hero-secondary{color:#d0dce7;font-size:12px;text-decoration:none;margin-top:20px}.hero-secondary:hover{text-decoration:underline}.professional-impact{padding-top:48px;padding-bottom:42px}.professional-impact .outcomes{margin-top:28px}.professional-impact .outcome strong{font-size:clamp(26px,2.6vw,38px)}.professional-impact .outcome-note{margin-bottom:0}.professional-impact .section-heading h2{font-size:42px}.filter-summary{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.filter-summary>a,.return-filters{font-size:12px;color:#3e5a49;text-underline-offset:4px}.collection-label{line-height:1.7}.card-facts{margin:20px 0 22px;border-top:1px solid #d5ddce}.card-facts>div{display:grid;grid-template-columns:65px 1fr;gap:10px;padding:11px 0;border-bottom:1px solid #d5ddce}.card-facts dt{font-size:10px;color:#476044;font-weight:700}.card-facts dd{font-size:12px;line-height:1.65;color:#4f5c50;margin:0}.experience .experience-list{margin-top:35px}.experience .role-focus{font-size:11px;color:#626381;margin:0 0 14px;font-weight:600;line-height:1.7}.additional-work{border-top:1px solid #c9d0c5}.additional-filter-note{font-size:12px;color:#536349;margin:25px 0}.additional-empty{font-size:14px;padding:24px 0}.return-filters{display:inline-block;margin-top:35px;min-height:44px;padding-top:10px}.skills-section{padding:65px 6%;background:#e5e9e3}.skills-section .section-heading h2{font-size:44px}.skill-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 40px;margin-top:32px}.skill-groups article{border-top:2px solid #9cad9b;padding-top:20px}.skill-groups h3{font-size:18px;line-height:1.4;margin:0 0 14px;letter-spacing:-.02em}.skill-groups p{font-size:14px;line-height:1.85;color:#4d5d51;margin:0 0 14px}.skill-groups small{font-size:11px;line-height:1.7;color:#5d6d60;display:block}.project-glance{border:1px solid #c9d3c2;background:#e9eddf;border-radius:12px;padding:25px;margin:0 0 42px}.project-glance h2{font:600 25px/1.2 Arial,sans-serif;letter-spacing:-.035em;margin:0 0 18px}.project-glance dl{margin:0}.project-glance dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;padding:12px 0;border-top:1px solid #c9d3c2}.project-glance dt{font-size:11px;font-weight:700;color:#3d5843}.project-glance dd{font-size:13px;line-height:1.7;margin:0;color:#465a4b}.personal-glance-wrap{padding:50px 6% 0;max-width:1150px}.personal-glance-wrap .project-glance{background:#f1e8d6;border-color:#d7c29c;margin-bottom:0}.personal-glance-wrap .project-glance dl>div{border-color:#d7c29c}.personal-intro{padding-top:35px}.footer-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px}.footer-actions a{color:#d4e1ed;text-decoration:none;font-weight:600}.footer-actions a:hover{text-decoration:underline}.work-sample img{aspect-ratio:auto}.hero-main:before{margin-bottom:22px}
@media(min-width:1600px){.skills-section{padding-left:max(6%,calc((100vw - 1408px)/2));padding-right:max(6%,calc((100vw - 1408px)/2))}}@media(max-width:1000px){.hero h1{font-size:47px}.project-glance dl>div{grid-template-columns:105px 1fr;gap:12px}.card-facts>div{grid-template-columns:1fr;gap:3px}.professional-impact .outcome strong{font-size:28px}}@media(max-width:700px){.hero h1{font-size:clamp(36px,8.4vw,53px)}.hero .hero-copy{font-size:15px}.hero .hero-copy-secondary{font-size:14px}.career-strip{font-size:10px}.hero-personality{font-size:14px}.hero-actions{gap:10px 18px}.hero-secondary{font-size:11px}.professional-impact{padding-top:35px;padding-bottom:35px}.professional-impact .section-heading h2{font-size:35px}.professional-impact .outcome strong{font-size:32px}.filter-summary{display:block}.filter-summary>a{display:inline-block;margin-bottom:15px}.card-facts>div{grid-template-columns:65px 1fr;gap:10px}.skills-section{padding:45px 6%}.skill-groups{grid-template-columns:1fr;gap:24px}.skills-section .section-heading h2{font-size:36px}.project-glance{padding:20px}.project-glance dl>div{grid-template-columns:1fr;gap:5px}.project-glance dd{font-size:13px}.personal-glance-wrap{padding-top:35px}.project-glance h2{font-size:25px}.additional-filter-note{margin-top:20px}.footer-actions{gap:15px;line-height:1.9}}@media(max-width:360px){.hero h1{font-size:34px}.hero-actions .hero-secondary{margin-top:10px}.card-facts dd{font-size:12px}}
/* Keep filtered matches beside the controls, ahead of the career history. */
#work>#additional-work{padding:26px 0 0;margin:0;border:0;background:transparent}#work>#additional-work>.section-heading,#work>#additional-work>.additional-filter-note{display:none}#work>#additional-work:has([data-additional-academic][hidden]) .personal-projects{margin-top:0;padding-top:0;border-top:0}#work>#additional-work .personal-heading{margin-top:0}#work>#additional-work .personal-grid{max-width:none}#work>#additional-work .additional-empty{margin:0;padding-top:0}#work>#additional-work .return-filters{margin-top:22px}#work>#additional-work .personal-heading h3{font-size:28px}
#work:has(>#additional-work) .filter-summary>a{display:none}
#work>#additional-work:has([data-additional-academic][hidden]) .personal-heading h3{display:none}
