:root{--g:#3fae5a;--gd:#2e8b47;--gl:#e9f6ec;--txt:#222a26;--mut:#56605a;--bg:#f4faf5}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--txt);background:#fff;line-height:1.6}
a{color:inherit}
.wrap{max-width:1100px;margin:auto;padding:0 20px}
header{position:sticky;top:0;z-index:9;background:#fff;color:var(--txt);box-shadow:0 1px 0 #e2ece4}
header .wrap{display:flex;justify-content:space-between;align-items:center;height:78px}
.logo{font-weight:800;font-size:1.2rem;display:flex;gap:8px;align-items:center;text-decoration:none}
.logo span{color:var(--gd)}
nav a{color:var(--mut);text-decoration:none;margin-left:22px;font-size:.95rem}
nav a:hover{color:var(--gd)}
.hero{background:radial-gradient(circle at 85% 20%,rgba(63,174,90,.22),transparent 45%),linear-gradient(160deg,#f4faf5,#dff1e3);color:var(--txt);padding:100px 0 90px}
.hero h1{font-size:clamp(2rem,5vw,3.3rem);line-height:1.15;max-width:760px}
.hero h1 em{color:var(--gd);font-style:normal}
.hero p{color:var(--mut);font-size:1.15rem;max-width:620px;margin:20px 0 32px}
.btn{display:inline-block;background:var(--gd);color:#fff;font-weight:700;padding:14px 26px;border-radius:8px;text-decoration:none}
.btn.ghost{background:transparent;color:var(--gd);border:2px solid var(--gd);margin-left:10px}
section{padding:80px 0}
section.alt{background:var(--bg)}
h2{font-size:2rem;color:var(--txt);margin-bottom:8px}
.lead{color:var(--mut);margin-bottom:40px;max-width:640px}
.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.card{background:#fff;border:1px solid #e3e7ef;border-radius:14px;padding:26px}
.card svg{width:40px;height:40px;stroke:var(--gd);fill:none;stroke-width:1.8;margin-bottom:12px;background:var(--gl);padding:8px;border-radius:10px}
.card h3{color:var(--txt);margin-bottom:6px;font-size:1.1rem}
.card p{color:var(--mut);font-size:.95rem}
.steps{counter-reset:s;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.step{border-top:4px solid var(--g);background:#fff;padding:22px;border-radius:0 0 12px 12px}
.step:before{counter-increment:s;content:counter(s);display:block;font-size:2rem;font-weight:800;color:var(--gd)}
.step h3{color:var(--txt)}
.step p{color:var(--mut);font-size:.93rem}
.gallery{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.gi{margin:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.gi button{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}
.gi img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform .3s}
.gi button:hover img{transform:scale(1.04)}
.gi figcaption{padding:9px 12px;font-size:.88rem;color:var(--txt);border-top:3px solid #3fae5a}
.lb{position:fixed;inset:0;background:rgba(10,20,14,.92);display:flex;align-items:center;justify-content:center;z-index:999;padding:20px}
.lb[hidden]{display:none}
.lb figure{margin:0;text-align:center}.lb img{max-width:92vw;max-height:82vh;border-radius:8px}
.lb figcaption{color:#fff;margin-top:10px}
.lb button{position:absolute;background:rgba(63,174,90,.85);color:#fff;border:0;font-size:2rem;width:48px;height:48px;border-radius:50%;cursor:pointer;line-height:1}
.lb-x{top:16px;right:16px}.lb-p{left:12px;top:50%}.lb-n{right:12px;top:50%}
@media(max-width:560px){.gallery{grid-template-columns:repeat(2,1fr);gap:8px}.gi figcaption{font-size:.78rem;padding:7px 8px}}
.ph{aspect-ratio:4/3;border:2px dashed #b9c2d3;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--mut);background:#fff;text-align:center;font-size:.9rem;padding:10px}
.contact{background:var(--gd);color:#fff}
.contact h2{color:#fff}.contact .lead{color:#e6f4e9}
.contact .card{background:#fff;border-color:#fff}
.contact .card h3{color:var(--gd)}.contact .card p{color:var(--txt)}
.note{font-size:.8rem;color:#9aa6bd}
footer{background:#1f2a24;color:#b9c6bd;padding:26px 0;font-size:.85rem}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
@media(max-width:700px){nav{display:none}.hero{padding:70px 0}.btn.ghost{margin:0 0 0 8px}section{padding:56px 0}}
.g4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.brands{padding:56px 0}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips span{background:var(--gl);color:var(--gd);border:1px solid #cfe8d5;padding:8px 16px;border-radius:999px;font-weight:600;font-size:.95rem}
@media(min-width:900px){.g4s{grid-template-columns:repeat(3,1fr)}}
