:root{--bg:#111713;--surface:#19211b;--muted:#a1aaa0;--ink:#e8ece3;--accent:#c4f56a;--line:#344038}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip{position:absolute;left:-999px;top:10px;z-index:100;background:var(--accent);color:#111;padding:12px}.skip:focus{left:10px}.container{width:min(1320px,calc(100% - 96px));margin:auto}.header{height:88px;border-bottom:1px solid #2c352f;background:#111713}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{font-size:32px;font-weight:800;letter-spacing:-4px;line-height:1}.brand-mark span{color:var(--accent)}.brand-name{font-size:11px;letter-spacing:.16em;font-weight:800;line-height:1.4}.brand-name small{display:block;font-size:7px;letter-spacing:.14em;font-weight:400;color:#98a497}.nav-links{display:flex;align-items:center;gap:35px;font-size:12px;color:#c5cdc3}.nav-links a{transition:color .2s}.nav-links a:hover{color:var(--accent)}.nav-cv{background:transparent;border:1px solid #71805e;color:var(--ink);padding:12px 17px;cursor:pointer;font-size:12px}.nav-cv span{margin-left:20px;color:var(--accent)}.menu-toggle{display:none}.hero{padding-top:36px}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;min-height:620px}.hero-content{padding:78px 54px 32px 0;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.section-kicker,.hero-foot,.hero-bottom,.visual-top,.visual-bottom span,.card-top,.tags,.journey-label,.timeline-date,.timeline-type,.contact-details span,.dialog-eyebrow{font-size:10px;font-weight:700;letter-spacing:.14em}.eyebrow{display:flex;gap:9px;align-items:center;color:#b9c4b3;font-size:9px;white-space:nowrap}.status-dot{height:7px;width:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #c4f56a}.eyebrow .line{display:inline-block;height:1px;width:25px;background:#64725f;margin:0 3px}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-.055em}h1{font-size:clamp(50px,5.7vw,84px);line-height:1.04;margin:44px 0 27px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;color:var(--accent)}.hero-intro{max-width:475px;font-size:16px;line-height:1.8;color:#aeb9ad}.hero-intro strong{color:#edf2e9;font-weight:600}.hero-actions{display:flex;gap:12px;margin-top:24px}.button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:35px;padding:0 20px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-primary{color:#111713;background:var(--accent);border:1px solid var(--accent)}.button-outline{color:#e9eee4;background:transparent;border:1px solid #46544a;gap:10px}.file-icon{color:var(--accent);font-size:17px}.hero-foot{margin-top:auto;padding-top:65px;color:#8d9a8c;display:flex;gap:13px;align-items:center;font-size:9px;letter-spacing:.1em}.hero-foot i{height:3px;width:3px;background:var(--accent);border-radius:50%}.hero-visual{position:relative;overflow:hidden;background:#24342b;min-height:620px}.hero-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.7);transition:transform .8s}.hero-visual:hover img{transform:scale(1.035)}.image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,16,10,.45),transparent 38%,rgba(5,15,9,.8))}.visual-top,.visual-bottom{position:absolute;left:27px;right:27px;display:flex;justify-content:space-between}.visual-top{top:28px;color:#d4dfcd;font-size:9px}.visual-top span+span{color:var(--accent)}.visual-bottom{bottom:27px;align-items:end}.visual-bottom span{display:block;color:#bad59e;font-size:9px}.visual-bottom strong{font-size:22px;font-weight:400;line-height:1.25;display:block;margin-top:12px}.visual-index{font-family:monospace}.visual-center{position:absolute;inset:18% 14%;border:1px solid rgba(211,243,194,.2)}.cross{position:absolute;color:#ccf5a3}.cross-a{left:-5px;top:-9px}.cross-b{right:-5px;bottom:-9px}.visual-circle{border:1px solid rgba(211,243,194,.65);border-radius:50%;width:130px;height:130px;position:absolute;right:-40px;top:30%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:rgba(16,32,21,.65);text-align:center;font-size:9px;letter-spacing:.12em;line-height:1.5;color:#d3f2b2}.visual-circle b{font-size:22px;font-weight:400}.hero-bottom{height:86px;display:flex;align-items:center;gap:15px;color:#929f91;font-size:9px}.scroll-arrow{font-size:18px;color:var(--accent)}.hero-coordinate{margin-left:auto}.intro-strip{overflow:hidden;background:var(--accent);color:#182015}.strip-inner{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:25px;white-space:nowrap;font-size:10px;font-weight:800;letter-spacing:.15em}.strip-symbol{font-size:21px}.section{padding:130px 0}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-bottom:70px}.section-kicker{color:var(--accent);padding-top:14px}.section-kicker span:before{content:'';display:inline-block;width:25px;height:1px;background:var(--accent);vertical-align:middle;margin-right:10px}h2{font-size:clamp(43px,5vw,68px);line-height:1.1;margin-bottom:0}.section-heading>div>p{max-width:490px;color:var(--muted);line-height:1.8;font-size:15px;margin:22px 0 0}.about-grid{display:grid;grid-template-columns:1fr 1.2fr .65fr;gap:30px}.about-label{font-size:10px;letter-spacing:.13em;color:#909d8f;line-height:1.6}.mini-icon{display:inline-flex;width:48px;height:48px;border:1px solid #536653;align-items:center;justify-content:center;border-radius:50%;font-size:20px;color:var(--accent);margin-bottom:20px}.about-copy{max-width:630px}.about-copy p{color:#aab5a8;line-height:1.9;font-size:15px}.about-copy .lead{color:#e8eee4;font-size:22px;line-height:1.5;letter-spacing:-.02em}.text-link{display:inline-block;border-bottom:1px solid #6a805e;padding:12px 0;font-size:12px;font-weight:700;margin-top:8px}.text-link span{color:var(--accent);margin-left:35px}.stats{border-left:1px solid var(--line);padding-left:35px}.stats>div{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.stats strong{font-size:40px;font-weight:400;letter-spacing:-.05em}.stats strong span{color:var(--accent);font-size:25px}.stats p{color:var(--muted);font-size:11px;margin:8px 0 0}.projects{background:#e8ede3;color:#182019}.projects em,.journey em{color:#588238}.projects .section-kicker,.journey .section-kicker{color:#527633}.projects .section-kicker span:before,.journey .section-kicker span:before{background:#527633}.projects .section-heading>div>p{color:#687366}.project-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.project-card{background:#f5f7f1;border:1px solid #d7dfd1;transition:transform .25s,border-color .25s}.project-card:hover{transform:translateY(-4px);border-color:#89a77c}.featured{grid-column:span 3}.compact{grid-column:span 2;padding:25px;min-height:285px;display:flex;flex-direction:column}.card-top{display:flex;justify-content:space-between;color:#71806e;font-size:9px}.featured .card-top{padding:24px 25px}.card-top span:last-child{font-size:16px;color:#577b45}.project-art{height:235px;position:relative;overflow:hidden;background:#273b2d;margin:0 25px;color:#b8e38f}.project-art:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:30px 30px}.water-art svg{position:absolute;inset:30px 0;width:100%;height:70%;fill:none;stroke:#9ad176;stroke-width:1;opacity:.45}.tank{position:absolute;width:110px;height:145px;border:2px solid #a5cf92;left:calc(50% - 55px);top:42px;border-radius:0 0 14px 14px;z-index:1}.water{position:absolute;bottom:0;width:100%;height:60%;background:#a6dc8060;border-top:2px solid #c1ef99;border-radius:0 0 11px 11px}.tank-line{position:absolute;right:-13px;width:22px;border-top:1px solid #c7e3b9}.tank-line.one{top:35px}.tank-line.two{bottom:35px}.art-label{position:absolute;font-size:8px;letter-spacing:.13em;color:#adcea4}.art-label.a{top:40px;left:22px}.art-label.b{bottom:28px;right:22px}.conveyor-line{position:absolute;left:12%;right:12%;top:65%;border:2px solid #a5cf92;border-radius:20px;height:24px;display:flex;align-items:center;justify-content:space-around}.conveyor-line i{width:11px;height:11px;border:1px solid #a5cf92;border-radius:50%}.bottles{position:absolute;top:35%;left:25%;width:50%;display:flex;justify-content:space-between}.bottles span{width:32px;height:67px;border:2px solid #a5cf92;border-radius:5px 5px 8px 8px;background:linear-gradient(to top,#b7e39577 40%,transparent 40%)}.bottles span:before{content:'';display:block;border:2px solid #a5cf92;width:11px;height:7px;margin:-9px auto 0}.fill-head{position:absolute;left:50%;height:40px;top:12%;border-left:2px solid #a5cf92}.project-body{display:grid;grid-template-columns:40px 1fr;padding:28px 25px 30px;gap:10px}.project-number{font-size:12px;color:#899885}.project-card h3{font-size:21px;letter-spacing:-.03em;line-height:1.2;font-weight:600;margin:0 0 12px}.project-card p{font-size:13px;color:#687668;line-height:1.7;margin:0 0 22px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.tags span{border:1px solid #d4dfce;padding:7px 8px;color:#61745d;font-size:8px;letter-spacing:.1em}.compact-icon{font-size:35px;color:#73995b;line-height:1;margin:28px 0}.compact h3{font-size:19px}.project-note{font-size:12px;color:#687668;margin:27px 0 0}.project-note span{color:#638844;margin-right:8px}.expertise{background:#172019}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #3c493e;border-bottom:1px solid #3c493e}.skills-grid article{padding:30px 38px 15px;border-right:1px solid #3c493e}.skills-grid article:first-child{padding-left:0}.skills-grid article:last-child{border-right:0}.skill-head{display:flex;justify-content:space-between;color:#8c9b8b;font-size:10px}.skill-head span:last-child{font-size:25px;color:var(--accent)}.skills-grid h3{font-size:29px;line-height:1.12;letter-spacing:-.04em;font-weight:500;margin:35px 0 16px}.skills-grid p{font-size:13px;line-height:1.8;color:#9fae9c;min-height:66px}.skills-grid ul{list-style:none;padding:15px 0 0;margin:0}.skills-grid li{font-size:12px;color:#d2dcd0;border-top:1px solid #364438;padding:13px 0}.skills-grid li:before{content:'+';color:var(--accent);margin-right:12px}.journey{background:#f3f5ee;color:#19221a}.journey-grid{display:grid;grid-template-columns:1fr 2fr;gap:30px}.journey-label{color:#788875}.journey-label span{color:#648e47;font-size:20px;margin-left:20px}.timeline-item{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:28px 0;border-top:1px solid #cad6c4}.timeline-item:last-child{border-bottom:1px solid #cad6c4}.timeline-date{color:#7c8978;font-size:10px}.timeline-type{color:#668b4f;font-size:9px}.timeline h3{font-size:20px;letter-spacing:-.02em;font-weight:600;margin:9px 0}.timeline p{font-size:13px;color:#6b7869;line-height:1.6;margin:0}.contact{background:var(--accent);color:#182115;padding:115px 0}.contact-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:80px}.contact .section-kicker{color:#4d6b37;margin-bottom:30px}.contact .section-kicker span:before{background:#4d6b37}.contact h2{font-size:clamp(53px,6vw,85px)}.contact h2 em{color:#3e642d}.contact p{color:#4b6340;font-size:15px;line-height:1.7;max-width:390px;margin:25px 0}.button-dark{background:#172019;color:#f4faeb;border:0;margin-top:12px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-content:end}.contact-details div{border-top:1px solid #8cb65c;padding-top:17px;min-width:0}.contact-details span{display:block;color:#4d6d36;font-size:9px;margin-bottom:14px}.contact-details a,.contact-details p{font-size:13px;line-height:1.5;margin:0;color:#24351d;overflow-wrap:anywhere}.contact-details a:hover{text-decoration:underline}footer{background:#111713}.footer-inner{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-inner p{font-size:12px;color:#829080;margin:0}.footer-inner>a:last-child{font-size:9px;letter-spacing:.13em;color:#a8b9a3}dialog{padding:0;border:0;background:#f4f6ef;color:#172019;width:min(850px,calc(100% - 32px));max-height:90vh;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#08100bd9}.dialog-bar{background:#18221a;color:#e8eee4;padding:24px 30px;display:flex;justify-content:space-between;align-items:center}.dialog-eyebrow{color:#c4f56a;font-size:9px}.dialog-bar h2{font-size:27px;margin:8px 0 0;letter-spacing:-.03em}.close-cv{background:transparent;border:1px solid #586a56;color:#fff;width:40px;height:40px;cursor:pointer}.dialog-actions{padding:15px 30px;border-bottom:1px solid #d9e2d3;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;color:#62725e}.dialog-actions div{display:flex;align-items:center;gap:16px}.dialog-actions a{font-weight:700;color:#42652f}.dialog-actions .download{background:#c4f56a;color:#182115;padding:10px 12px}.cv-content{padding:35px 50px 50px;font-size:13px;line-height:1.7;color:#344032}.cv-intro h3{font-size:23px;color:#172019;margin:0 0 4px}.cv-intro p:first-of-type{font-weight:700;color:#42563c}.cv-content a{text-decoration:underline}.cv-content section{margin-top:26px}.cv-content h4{text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:#4d7735;border-bottom:1px solid #b8c8b1;padding-bottom:7px;margin:0 0 12px}.cv-content p{margin:0 0 10px}.cv-content ul{padding-left:20px}.cv-content li{margin-bottom:5px}body.dialog-open{overflow:hidden}@media(max-width:1000px){.container{width:min(100% - 60px,1320px)}.hero-grid{min-height:540px}.hero-content{padding:60px 30px 30px 0}.hero-visual{min-height:540px}.hero-foot{flex-wrap:wrap}.about-grid{grid-template-columns:.7fr 1.3fr}.stats{grid-column:2;display:flex;gap:25px;padding-left:0;border-left:0}.stats>div{flex:1}.project-art{height:210px}.compact{grid-column:span 3}.section{padding:100px 0}}@media(max-width:700px){.container{width:calc(100% - 40px)}.header{height:72px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:42px;height:42px;border:1px solid #435145;background:transparent;padding:10px;cursor:pointer}.menu-toggle span{width:100%;height:1px;background:#dce8d6}.nav-links{display:none;position:absolute;left:0;right:0;top:72px;background:#172019;z-index:10;padding:20px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid #435145}.nav-links.is-open{display:flex}.nav-links a{padding:13px 0}.nav-cv{text-align:left;margin-top:10px}.hero{padding-top:0}.hero-grid{display:flex;flex-direction:column}.hero-content{padding:65px 0 35px}.eyebrow{font-size:8px;letter-spacing:.08em;flex-wrap:wrap;white-space:normal}h1{font-size:clamp(48px,11.5vw,70px);margin:32px 0 22px}.hero-intro{font-size:15px}.hero-actions{margin-top:18px}.button{gap:18px;padding:0 16px}.hero-foot{padding-top:43px;font-size:8px}.hero-visual{min-height:410px}.visual-circle{width:105px;height:105px;right:-20px;font-size:8px}.hero-bottom{height:70px}.hero-coordinate{display:none}.strip-inner{justify-content:flex-start;font-size:9px;overflow:hidden}.section{padding:80px 0}.section-heading{display:block;margin-bottom:42px}.section-kicker{padding:0;margin-bottom:25px}h2{font-size:clamp(42px,9vw,60px)}.about-grid{display:block}.about-label{display:flex;align-items:center;gap:14px;margin-bottom:25px}.mini-icon{margin:0}.about-label p{margin:0}.about-copy .lead{font-size:20px}.stats{margin-top:45px;gap:12px}.stats strong{font-size:32px}.stats p{line-height:1.5}.project-grid{grid-template-columns:1fr;gap:12px}.featured,.compact{grid-column:auto}.project-art{height:220px}.compact{min-height:240px}.compact-icon{margin:20px 0}.skills-grid{display:block}.skills-grid article,.skills-grid article:first-child{padding:26px 0 20px;border-right:0;border-bottom:1px solid #3c493e}.skills-grid article:last-child{border-bottom:0}.skills-grid h3{margin-top:20px}.skills-grid p{min-height:0}.journey-grid{display:block}.journey-label{margin-bottom:28px}.timeline-item{grid-template-columns:1fr;gap:12px}.contact{padding:80px 0}.contact-inner{display:block}.contact-details{margin-top:65px;gap:25px 15px}.footer-inner{padding:25px 0;flex-wrap:wrap}.footer-inner p{order:3;width:100%}.dialog-bar{padding:20px}.dialog-actions{padding:14px 20px;align-items:flex-start;flex-direction:column}.dialog-actions div{flex-wrap:wrap}.cv-content{padding:28px 23px}.cv-intro h3{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.contact-form-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;border-top:1px solid #8cb65c;margin-top:80px;padding-top:50px}.form-heading span{font-size:10px;font-weight:700;letter-spacing:.14em;color:#4d6d36}.form-heading h3{font-size:36px;font-weight:500;letter-spacing:-.04em;margin:22px 0 12px}.form-heading p{margin:0;max-width:370px}#contact-form{display:grid;gap:19px;scroll-margin-top:30px}#contact-form label{display:grid;gap:8px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#405c30}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}#contact-form input,#contact-form textarea{font:400 14px Arial,sans-serif;color:#172019;width:100%;border:1px solid #90b769;background:rgba(255,255,255,.28);padding:13px 14px;border-radius:0;resize:vertical}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#688250}#contact-form input:focus,#contact-form textarea:focus{outline:2px solid #345927;outline-offset:2px}#contact-form .button{margin:0;min-width:160px}#contact-form .button:disabled{opacity:.65;cursor:wait;transform:none}.form-bottom{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.contact .form-status{font-size:12px;font-weight:700;line-height:1.5;margin:0;color:#263c1e}.contact .form-status.error{color:#702a1b}.contact .form-privacy{font-size:11px;margin:0;color:#526f3d}@media(max-width:700px){.contact-form-wrap{display:block;margin-top:60px;padding-top:40px}.form-heading{margin-bottom:30px}.form-heading h3{font-size:30px}.form-row{grid-template-columns:1fr}}
