.ngpf-project {
padding: clamp(116px, 12vw, 156px) 0 clamp(60px, 8vw, 110px);
}
.ngpf-project-shell {
width: min(1200px, 90%);
margin: auto;
}
.ngpf-project-back {
display: flex;
align-items: baseline;
flex-wrap: wrap;
gap: 6px 12px;
padding-bottom: 16px;
margin-bottom: clamp(24px, 4vw, 54px);
border-bottom: 1px solid #eceef0;
color: #62676b;
font-size: 16px;
line-height: 1.45;
}
.ngpf-project-layout {
display: grid;
grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
gap: clamp(28px, 5vw, 76px);
align-items: center;
}
.ngpf-project-copy h1 {
font-size: clamp(36px, 4vw, 68px);
line-height: 1.04;
overflow-wrap: anywhere;
text-wrap: balance;
}
.ngpf-project-copy .ngpf-project-specialty {
margin-top: 12px;
font-size: clamp(18px, 2vw, 24px);
color: #62676b;
}
.ngpf-project-copy .ngw-project-brief {
margin: 22px 0;
}
.ngpf-project-actions {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 14px 25px;
}
.ngpf-project-image {
padding: clamp(8px, 1.5vw, 20px);
border: 1px solid #eceef0;
border-radius: 12px;
background: #f7f8f9;
}
.ngpf-project-image img { display: block; width: 100%; height: auto; }
.ngpf-project .ngpf-project-specialty::before {
content: "";
display: block;
width: 40px;
height: 3px;
margin-bottom: 14px;
background: #84c041;
}
.ngpf-web-card { display: flex; flex-direction: column; }
.ngpf .ngpf-project-entry { display: block; color: #202124; }
.ngpf .ngpf-web-card .ngpf-caption { flex-wrap: wrap; gap: 8px 14px; }
.ngpf .ngpf-web-card .ngpf-caption h3 { margin: 0; }
.ngpf .ngpf-web-card .ngpf-explore {
font-size: 14px;
letter-spacing: normal;
text-transform: none;
}
.ngpf-explore i { font-style: normal; }
.ngpf .ngpf-web-card .ngw-project-brief { margin: 0; }
.ngpf .ngpf-web-card > .ngpf-visit {
align-self: flex-start;
margin: auto clamp(18px, 3vw, 24px) 20px;
padding: 4px 0;
}
.ngx .ngpf-visit, .ngx .ngpf-project-back a {
color: #202124;
text-decoration: underline;
text-underline-offset: 4px;
}
.ngpf-web-card .ngpf-project-entry:hover h3 { text-decoration: underline; }
@media (max-width: 800px) {
.ngpf-project-layout { grid-template-columns: minmax(0, 1fr); }
.ngpf-project-image { max-width: 100%; }
}
.ngpf-card > .ngw-project-brief {
padding: 0 clamp(18px, 3vw, 24px) 22px;
}
.ngpf-card > .ngw-project-brief p {
margin: 0;
color: #62676b;
font-size: 16px;
line-height: 1.6;
}
.ngpf .ngx-hero{background:#f4f7ef;padding-bottom:56px}
.ngpf-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:56px}
.ngpf .ngx-intro{margin-top:0}
.ngpf .ngx-section{padding:48px 0 65px}
.ngpf-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:42px;padding-bottom:26px;border-bottom:1px solid #dce3d5}
.ngpf-tabs a{display:inline-flex;gap:30px;align-items:center;padding:13px 22px;border:1px solid #d5decc;border-radius:4px;font-family:'Proximanova-bold',sans-serif;background:#fff}
.ngpf-tabs a[aria-current=page]{background:#262626;color:white;border-color:#262626}
.ngpf-tabs a:hover{background:#84c041;color:#242424;text-decoration:none}
.ngpf-section-head{margin-bottom:28px}
.ngpf-section-head p{margin-top:10px;max-width:650px}
.ngpf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.ngpf-grid--logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.ngpf-card{min-width:0;border:1px solid #e0e5d9;background:white;border-radius:10px;overflow:hidden}
.ngpf-art{display:flex;align-items:center;justify-content:center;background:#f1f3ed;padding:24px;min-height:220px}
.ngpf .ngpf-art img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;transition:transform .25s ease}
.ngpf-art:hover img{transform:scale(1.015)}
.ngpf-grid--logos .ngpf-art{aspect-ratio:1/1;background:#fafbf8;padding:30px}
.ngpf-grid--logos .ngpf-art img{width:100%;height:100%;object-fit:contain}
.ngpf-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;border-top:1px solid #e7ebdf}
.ngpf-caption span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#333333}
.ngpf .ngpf-caption h3{font-size:21px;line-height:1.25;margin-top:5px}
.ngpf-caption>a{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid #d7dfcd;border-radius:50%;color:#333333}
.ngpf-caption>a:hover{background:#84c041;text-decoration:none}
.ngpf-video-group .ngpf-caption>a{width:auto;min-width:0;flex:0 0 auto;padding:0 15px;border-radius:22px;font-size:12px;white-space:nowrap;font-family:'Proximanova-bold',sans-serif}
.ngpf-player{position:relative;aspect-ratio:16/9;background:#171717}
.ngpf-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ngpf-video-group+.ngpf-video-group{margin-top:52px}
.ngpf-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:36px}
.ngpf-pagination a,.ngpf-pagination span{padding:10px 16px;border:1px solid #dce3d5;border-radius:4px}
.ngpf-pagination .current{background:#262626;color:#fff}
@media(max-width:1000px){.ngpf-hero-grid{grid-template-columns:1fr;gap:24px}.ngpf-grid--logos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ngpf .ngx-shell{width:calc(100% - 36px)}.ngpf .ngx-hero{padding:120px 0 38px}.ngpf .ngx-crumb{margin-bottom:25px}.ngpf .ngx-section{padding:30px 0 45px}.ngpf-grid,.ngpf-grid--logos{grid-template-columns:1fr;gap:22px}.ngpf-tabs{gap:8px;margin-bottom:28px}.ngpf-tabs a{padding:10px 13px;gap:10px;font-size:14px}.ngpf-art{padding:16px}.ngpf-caption{padding:18px}.ngpf .ngpf-caption h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.ngpf-art img{transition:none}}