@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@700;800&display=swap";:root{color:#eef3f5;font-synthesis:none;text-rendering:optimizelegibility;letter-spacing:0;background:#0b1115;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#0b1115;min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline-offset:4px;outline:3px solid #53dfc0}.portfolio-shell{min-height:100vh;overflow:hidden}.portfolio-nav{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0b1115eb;border-bottom:1px solid #26323a;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(22px,6vw,88px);display:flex;position:sticky;top:0}.portfolio-name{align-items:center;gap:12px;display:flex}.portfolio-name span{color:#07100e;background:#53dfc0;border-radius:6px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.portfolio-name strong{color:#fff;font-size:14px}.portfolio-nav nav{align-items:center;gap:clamp(14px,3vw,34px);font-size:14px;font-weight:700;display:flex}.portfolio-nav nav a{color:#aeb9be}.portfolio-nav nav a:hover{color:#fff}.portfolio-hero{isolation:isolate;background-color:#101b21;background-image:url(/footprint-preview.png);background-position:50%;background-size:cover;border-bottom:1px solid #26323a;grid-template-columns:minmax(0,1.5fr) minmax(240px,.5fr);align-items:end;gap:48px;height:calc(100svh - 110px);min-height:640px;max-height:760px;padding:clamp(70px,10vw,130px) clamp(22px,8vw,120px) 80px;display:grid;position:relative}.portfolio-hero:before{content:"";z-index:-1;background:#050a0dd1;position:absolute;inset:0}.hero-copy{max-width:840px}.hero-kicker,.section-heading>p,.project-number{color:#53dfc0;text-transform:uppercase;letter-spacing:0;margin:0 0 18px;font-size:12px;font-weight:800}.portfolio-hero h1{letter-spacing:0;color:#fff;margin:0;font-family:Playfair Display,Georgia,serif;font-size:112px;line-height:.88}.hero-lead{max-width:700px;margin:30px 0 0;font-size:34px;font-weight:600;line-height:1.18}.hero-summary{color:#b7c2c7;max-width:680px;margin:20px 0 0;font-size:16px;line-height:1.7}.hero-actions,.project-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px;display:flex}.primary-link{color:#fff;background:#ff654c;border-radius:6px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:800;display:inline-flex;box-shadow:0 12px 30px #ff654c40}.primary-link:hover{background:#ff7d68}.text-link{color:#fff;border-bottom:1px solid #65727a;padding-bottom:5px;font-weight:800}.text-link:hover{border-color:#53dfc0}.hero-facts{align-self:end;max-width:310px}.hero-signal{border-top:3px solid #f3c760;padding-top:16px}.hero-signal span{color:#f3c760;text-transform:uppercase;letter-spacing:0;font-size:12px;font-weight:800;display:block}.hero-signal strong{margin-top:8px;font-size:18px;line-height:1.4;display:block}.hero-facts dl{margin:26px 0 0}.hero-facts dl>div{border-top:1px solid #44515a;grid-template-columns:82px 1fr;gap:12px;padding:10px 0;display:grid}.hero-facts dt{color:#8f9ba1;text-transform:uppercase;font-size:11px}.hero-facts dd{color:#eef3f5;margin:0;font-size:12px;font-weight:800}.portfolio-work,.portfolio-values,.portfolio-about{padding:clamp(72px,10vw,130px) clamp(22px,8vw,120px)}.portfolio-work{color:#182127;background:#eef1ee}.portfolio-work .section-heading>p{color:#137f6b}.section-heading{max-width:730px;margin-bottom:46px}.section-heading h2{margin:0;font-family:Playfair Display,Georgia,serif;font-size:64px;font-weight:800;line-height:1.02}.project-feature{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:center;gap:clamp(28px,5vw,70px);display:grid}.project-feature+.project-feature{margin-top:clamp(72px,10vw,132px)}.project-feature-secondary{grid-template-columns:minmax(320px,.65fr) minmax(0,1.35fr)}.project-feature-secondary .project-visual{order:2}.project-visual{aspect-ratio:16/10;background:#182127;border-radius:6px;display:block;overflow:hidden;box-shadow:0 24px 60px #1821272e}.project-visual img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.project-visual:hover img{transform:scale(1.02)}.project-copy h3{margin:0 0 18px;font-family:Playfair Display,Georgia,serif;font-size:52px}.project-copy>p:not(.project-number){color:#4c5b63;line-height:1.7}.project-copy ul{gap:10px;margin:24px 0 0;padding:0;list-style:none;display:grid}.project-copy li{border-top:1px solid #c8d0d0;padding-top:10px;font-size:14px;font-weight:700}.project-copy .text-link{color:#182127}.github-band{color:#eef3f5;background:#182127;border-radius:6px;grid-template-columns:1fr 1fr auto;align-items:center;gap:20px;min-height:92px;margin-top:70px;padding:22px 28px;display:grid}.github-band span{color:#aeb9be;font-size:13px}.github-band span:last-child{color:#53dfc0;font-size:24px}.portfolio-values{background:#17252a;border-top:1px solid #324147;border-bottom:1px solid #324147}.portfolio-values .section-heading{margin-bottom:54px}.value-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(26px,5vw,70px);display:grid}.value-grid article{border-top:2px solid #536269;padding-top:18px}.value-grid article:first-child{border-color:#53dfc0}.value-grid article:nth-child(2){border-color:#f3c760}.value-grid article:nth-child(3){border-color:#ff654c}.value-grid span{color:#8f9ba1;font-size:12px;font-weight:800}.value-grid h3{margin:18px 0 12px;font-family:Playfair Display,Georgia,serif;font-size:30px}.value-grid p{color:#b7c2c7;margin:0;font-size:15px;line-height:1.7}.portfolio-about{background:#11191e}.about-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(36px,8vw,110px);display:grid}.about-copy{color:#b7c2c7;gap:24px;font-size:17px;line-height:1.75;display:grid}.about-copy p,.experience-list p{margin:0}.experience-list{gap:0;display:grid}.experience-list>div{border-top:1px solid #334049;padding:20px 0}.experience-list span{color:#f3c760;text-transform:uppercase;letter-spacing:0;font-size:12px;font-weight:800;display:block}.experience-list strong{margin-top:7px;font-size:18px;display:block}.experience-list p{color:#8f9ba1;margin-top:5px;font-size:13px}.skill-list{flex-wrap:wrap;gap:10px;margin-top:55px;display:flex}.skill-list span{color:#c8d0d3;border:1px solid #3b4951;border-radius:4px;padding:9px 12px;font-size:13px;font-weight:700}.portfolio-footer{background:#090e11;border-top:1px solid #26323a;justify-content:space-between;align-items:center;min-height:160px;padding:36px clamp(22px,8vw,120px);display:flex}.portfolio-footer>div{align-items:center;gap:20px;display:flex}.portfolio-footer span,.portfolio-footer a{color:#8f9ba1;font-size:13px}.portfolio-footer a:hover{color:#53dfc0}@media (width<=760px){.portfolio-nav{height:64px;padding:0 18px}.portfolio-nav nav{gap:16px}.portfolio-name strong,.portfolio-nav nav a:nth-child(2),.portfolio-nav nav a:nth-child(3){display:none}.portfolio-hero{grid-template-columns:1fr;align-content:start;gap:36px;height:auto;min-height:calc(100svh - 64px);max-height:none;padding:68px 22px 52px}.portfolio-hero h1{font-size:68px}.hero-lead{font-size:25px}.section-heading h2{font-size:42px}.project-feature,.value-grid,.about-grid{grid-template-columns:1fr}.project-feature-secondary .project-visual{order:0}.project-copy h3{font-size:42px}.github-band{grid-template-columns:1fr auto}.github-band>span:first-child{display:none}.portfolio-footer{flex-direction:column;align-items:flex-start;gap:24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-visual img{transition:none}}
