:root{--gp-ink:#07111f;--gp-ink2:#0d1b2d;--gp-paper:#f4f1ea;--gp-paper2:#e9e4da;--gp-white:#fff;--gp-blue:#2f6df6;--gp-muted:#647080;--gp-line:rgba(7,17,31,.13);--gp-radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--gp-paper);color:var(--gp-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit}.gp-shell{width:min(1160px,calc(100% - 40px));margin:auto}.gp-top{position:sticky;top:0;z-index:20;background:rgba(244,241,234,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--gp-line)}
.gp-nav{min-height:76px;display:flex;align-items:center;gap:24px}.gp-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;letter-spacing:-.04em;font-size:1.15rem}.gp-brand img{width:34px;height:34px}.gp-navlinks{display:flex;align-items:center;gap:22px;margin-left:auto}.gp-navlinks a{text-decoration:none;font-size:.92rem;font-weight:650}.gp-navlinks a:hover{color:var(--gp-blue)}
.gp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid var(--gp-ink);transition:.2s ease}.gp-btn.primary{background:var(--gp-ink);color:white}.gp-btn.primary:hover{background:var(--gp-blue);border-color:var(--gp-blue);transform:translateY(-1px)}.gp-btn.secondary{background:transparent}.gp-btn.secondary:hover{background:white}.gp-btn.light{background:white;border-color:white;color:var(--gp-ink)}
.gp-hero{padding:clamp(72px,10vw,130px) 0 76px}.gp-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);gap:clamp(40px,7vw,90px);align-items:center}.gp-kicker{font-size:.78rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase;color:var(--gp-blue);margin:0 0 18px}.gp-hero h1{font-size:clamp(2.6rem,5.6vw,5.7rem);line-height:.96;letter-spacing:-.065em;margin:0;max-width:900px}.gp-lead{font-size:clamp(1.08rem,1.7vw,1.3rem);color:#435062;max-width:720px;margin:28px 0 0}.gp-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.gp-offer{padding:24px;border:1px solid var(--gp-line);border-radius:var(--gp-radius);background:white}.gp-offer strong{font-size:1.35rem;display:block;letter-spacing:-.025em}.gp-offer p{color:var(--gp-muted);margin:.45rem 0 0}.gp-facts{display:grid;gap:0;margin-top:20px;border-top:1px solid var(--gp-line)}.gp-facts span{padding:12px 0;border-bottom:1px solid var(--gp-line);font-size:.9rem;font-weight:650}
.gp-section{padding:88px 0}.gp-section.alt{background:var(--gp-paper2)}.gp-section.dark{background:var(--gp-ink);color:white}.gp-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,.65fr);gap:40px;align-items:end;margin-bottom:42px}.gp-head h2{font-size:clamp(2rem,4vw,4rem);line-height:1.02;letter-spacing:-.05em;margin:0}.gp-head p{color:var(--gp-muted);margin:0}.dark .gp-head p{color:#b5c0ce}
.gp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gp-card{background:white;border:1px solid var(--gp-line);border-radius:var(--gp-radius);padding:26px}.gp-card h3{margin:0 0 10px;font-size:1.2rem}.gp-card p{margin:0;color:var(--gp-muted)}.gp-card a{display:inline-flex;margin-top:18px;font-weight:800;text-decoration:none;color:var(--gp-blue)}.dark .gp-card{background:var(--gp-ink2);border-color:rgba(255,255,255,.12)}.dark .gp-card p{color:#b5c0ce}
.gp-copy{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(32px,7vw,90px)}.gp-copy h2{font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.05;letter-spacing:-.045em;margin:0}.gp-copy article{font-size:1.03rem;color:#354356}.gp-copy article p:first-child{margin-top:0}.gp-copy article h3{color:var(--gp-ink);font-size:1.25rem;margin:32px 0 8px}.gp-list{padding:0;list-style:none;display:grid;gap:10px}.gp-list li{padding:14px 0;border-bottom:1px solid var(--gp-line);font-weight:650}
.gp-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gp-case{background:white;border:1px solid var(--gp-line);border-radius:var(--gp-radius);overflow:hidden;text-decoration:none}.gp-case img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.gp-case div{padding:20px}.gp-case h3{margin:0 0 5px}.gp-case p{margin:0;color:var(--gp-muted);font-size:.92rem}.gp-case:hover h3{color:var(--gp-blue)}
.gp-breadcrumb{padding:22px 0;font-size:.82rem;color:var(--gp-muted)}.gp-breadcrumb a{text-decoration:none}.gp-project-shot{border:1px solid var(--gp-line);border-radius:var(--gp-radius);overflow:hidden;background:white;padding:10px}.gp-project-shot img{display:block;width:100%;height:auto;border-radius:12px}.gp-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.gp-tags span{border:1px solid var(--gp-line);padding:7px 11px;border-radius:999px;font-size:.8rem;font-weight:700}
.gp-form-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(340px,1fr);gap:50px;align-items:start}.gp-form{background:white;color:var(--gp-ink);padding:28px;border-radius:var(--gp-radius);display:grid;grid-template-columns:1fr 1fr;gap:16px}.gp-form label{display:grid;gap:6px;font-size:.84rem;font-weight:750}.gp-form label.full,.gp-form .full{grid-column:1/-1}.gp-form input,.gp-form select,.gp-form textarea{width:100%;border:1px solid var(--gp-line);border-radius:10px;background:#faf9f6;padding:13px 14px;font:inherit}.gp-form textarea{min-height:110px;resize:vertical}.gp-form button{cursor:pointer}.gp-note{font-size:.82rem;color:#aeb9c8}
.gp-footer{background:#050c16;color:#c5cfdb;padding:50px 0}.gp-footer-grid{display:flex;gap:25px;align-items:center;justify-content:space-between;flex-wrap:wrap}.gp-footer a{text-decoration:none}.gp-footer nav{display:flex;gap:18px;flex-wrap:wrap;font-size:.86rem}.gp-foot-brand{color:white;font-weight:900}.gp-skip{position:absolute;left:-9999px}.gp-skip:focus{left:12px;top:12px;background:white;padding:10px;z-index:100}
@media(max-width:900px){.gp-navlinks{display:none}.gp-hero-grid,.gp-head,.gp-copy,.gp-form-wrap{grid-template-columns:1fr}.gp-grid,.gp-proof{grid-template-columns:1fr 1fr}.gp-hero{padding-top:62px}.gp-hero h1{font-size:clamp(2.65rem,11vw,4.8rem)}}
@media(max-width:620px){.gp-shell{width:min(100% - 28px,1160px)}.gp-grid,.gp-proof,.gp-form{grid-template-columns:1fr}.gp-nav{min-height:66px}.gp-nav>.gp-btn{margin-left:auto;padding:0 14px;min-height:42px;font-size:.84rem}.gp-section{padding:66px 0}.gp-hero{padding:48px 0 60px}.gp-actions .gp-btn{width:100%}.gp-form label.full,.gp-form .full{grid-column:auto}.gp-head{gap:18px}}
