.projects-page{background:#f6f8f9;overflow:hidden}
.projects-hero{position:relative;min-height:590px;background:#06111d;color:#fff;display:flex;align-items:center;overflow:hidden}
.projects-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 30%,rgba(23,166,115,.22),transparent 26%),radial-gradient(circle at 92% 82%,rgba(255,106,43,.18),transparent 25%),linear-gradient(100deg,#06111d 0%,#081b2a 55%,rgba(6,17,29,.6) 100%)}
.projects-hero:after{content:"";position:absolute;width:650px;height:650px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-180px;top:-130px;box-shadow:0 0 0 80px rgba(255,255,255,.015),0 0 0 160px rgba(255,255,255,.012)}
.projects-hero .container{position:relative;z-index:2;width:min(1180px,calc(100% - 40px));margin:auto}
.project-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.projects-hero h1{font-size:clamp(3.1rem,6vw,6rem);line-height:.94;letter-spacing:-.06em;margin:18px 0 24px;max-width:800px}
.projects-hero h1 span{color:var(--gp-green)}.projects-hero p{font-size:1.08rem;line-height:1.8;color:#c5d3da;max-width:690px}
.project-stats{display:flex;gap:28px;margin-top:32px;flex-wrap:wrap}.project-stat strong{display:block;font-size:1.45rem}.project-stat span{font-size:.68rem;color:#8fa4af;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.project-visual{height:390px;position:relative;display:grid;place-items:center}.terrain{width:390px;height:300px;transform:perspective(700px) rotateX(55deg) rotateZ(-20deg);border:1px solid rgba(255,255,255,.16);background:linear-gradient(135deg,rgba(23,166,115,.13),rgba(255,106,43,.08));box-shadow:0 0 80px rgba(23,166,115,.08);position:relative;overflow:hidden}.terrain:before{content:"";position:absolute;inset:-20%;background:repeating-linear-gradient(0deg,transparent 0 24px,rgba(255,255,255,.09) 25px 26px),repeating-linear-gradient(90deg,transparent 0 24px,rgba(255,255,255,.06) 25px 26px);transform:skewY(-8deg)}.terrain:after{content:"";position:absolute;width:150%;height:2px;background:var(--gp-green);top:50%;left:-20%;transform:rotate(-13deg);box-shadow:0 0 20px var(--gp-green)}.point{position:absolute;width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 18px rgba(255,255,255,.8);z-index:2}.p1{left:18%;top:28%}.p2{left:70%;top:20%;background:#17a673}.p3{left:50%;top:68%;background:var(--gp-green)}.p4{left:82%;top:72%;background:#17a673}.visual-chip{position:absolute;background:rgba(6,17,29,.86);border:1px solid rgba(255,255,255,.13);padding:10px 13px;border-radius:10px;font-size:.65rem;font-weight:900;letter-spacing:.06em}.vc1{left:0;top:14%}.vc2{right:0;top:39%}.vc3{left:16%;bottom:5%}

.projects-content{padding:90px 0}.projects-content .container{width:min(1180px,calc(100% - 40px));margin:auto}.project-intro{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:42px}.project-intro h2{font-size:clamp(2.1rem,4vw,3.6rem);letter-spacing:-.045em;line-height:1.02;margin:10px 0}.project-intro p{max-width:520px;color:#667781;line-height:1.8}.project-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.project-filter button{border:1px solid #d9e2e6;background:#fff;color:#40515b;padding:9px 14px;border-radius:999px;font-weight:800;font-size:.72rem;cursor:pointer}.project-filter button.active,.project-filter button:hover{background:#06111d;color:#fff;border-color:#06111d}

.project-grid-fancy{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.project-card-fancy{grid-column:span 4;position:relative;background:#fff;border:1px solid #dfe7eb;border-radius:20px;overflow:hidden;min-width:0;transition:.3s;box-shadow:0 8px 25px rgba(6,17,29,.035)}.project-card-fancy:nth-child(1),.project-card-fancy:nth-child(4){grid-column:span 8}.project-card-fancy:hover{transform:translateY(-8px);box-shadow:0 24px 55px rgba(6,17,29,.13)}.project-card-fancy .image-wrap{height:270px;position:relative;overflow:hidden;background:#081b2a}.project-card-fancy:nth-child(1) .image-wrap,.project-card-fancy:nth-child(4) .image-wrap{height:330px}.project-card-fancy img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.project-card-fancy:hover img{transform:scale(1.055)}.image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(6,17,29,.7) 100%);pointer-events:none}.project-badge{position:absolute;z-index:2;left:17px;top:17px;background:rgba(255,255,255,.92);color:#06111d;border-radius:999px;padding:7px 10px;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.project-index{position:absolute;z-index:2;right:17px;top:17px;color:#fff;border:1px solid rgba(255,255,255,.3);background:rgba(6,17,29,.45);backdrop-filter:blur(8px);padding:7px 10px;border-radius:999px;font-size:.62rem;font-weight:900}.project-hover{position:absolute;z-index:2;bottom:15px;left:17px;right:17px;color:#fff}.project-hover h3{font-size:1.45rem;margin:0 0 5px;letter-spacing:-.025em}.project-hover p{margin:0;color:#d2dde2;font-size:.78rem;line-height:1.5}.project-body-fancy{padding:18px 20px 20px}.project-body-fancy .meta{display:flex;gap:6px;flex-wrap:wrap}.project-body-fancy .tag{background:#f1f5f6;border-radius:999px;padding:6px 9px;font-size:.62rem;font-weight:800;color:#52636c}.project-body-fancy .arrow{float:right;color:#17a673;font-weight:900;font-size:1.1rem}

.case-strip{margin-top:55px;background:#06111d;border-radius:25px;padding:42px;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;overflow:hidden;position:relative}.case-strip:before{content:"";position:absolute;right:-100px;bottom:-170px;width:400px;height:400px;border-radius:50%;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 70px rgba(255,255,255,.015)}.case-strip>*{position:relative}.case-strip h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.05;letter-spacing:-.04em;margin:10px 0 15px}.case-strip p{color:#aebdc5;line-height:1.8}.case-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.case-item{border:1px solid rgba(255,255,255,.12);padding:18px;border-radius:13px}.case-item strong{display:block}.case-item span{font-size:.7rem;color:#8fa4af}

.projects-cta{margin-top:60px;background:linear-gradient(135deg,#edf8f3,#fff);border:1px solid #d5e9e0;border-radius:25px;padding:55px;text-align:center}.projects-cta h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.045em;line-height:1.05;max-width:800px;margin:10px auto 15px}.projects-cta p{max-width:680px;margin:auto;color:#667781;line-height:1.8}

@media(max-width:950px){.project-hero-grid{grid-template-columns:1fr}.project-visual{height:330px}.project-intro{display:block}.project-grid-fancy{grid-template-columns:repeat(2,1fr)}.project-card-fancy,.project-card-fancy:nth-child(1),.project-card-fancy:nth-child(4){grid-column:span 1}.project-card-fancy .image-wrap,.project-card-fancy:nth-child(1) .image-wrap,.project-card-fancy:nth-child(4) .image-wrap{height:260px}.case-strip{grid-template-columns:1fr}}
@media(max-width:620px){.projects-hero{min-height:auto;padding:80px 0 50px}.projects-hero h1{font-size:3rem}.projects-content{padding:65px 0}.projects-content .container,.projects-hero .container{width:calc(100% - 28px)}.project-grid-fancy{grid-template-columns:1fr}.project-card-fancy,.project-card-fancy:nth-child(1),.project-card-fancy:nth-child(4){grid-column:span 1}.project-card-fancy .image-wrap,.project-card-fancy:nth-child(1) .image-wrap,.project-card-fancy:nth-child(4) .image-wrap{height:260px}.project-visual{height:270px}.terrain{width:280px;height:220px}.visual-chip{font-size:.55rem}.vc1{left:0}.vc2{right:0}.case-strip{padding:28px 20px;border-radius:20px}.case-list{grid-template-columns:1fr}.projects-cta{padding:36px 20px;border-radius:20px}}
@media(prefers-reduced-motion:reduce){.project-card-fancy,.project-card-fancy img{transition:none}}
