.gi-overlay{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:44px 16px 16px;background:rgba(29,41,51,.6);overflow-y:auto}
.gi-overlay.is-open{display:flex}
.gi-modal{position:relative;width:100%;max-width:960px;margin:auto;padding:58px 32px 30px;border-radius:var(--radius-xl);background:var(--surface-card);color:var(--text-primary);box-shadow:var(--shadow-ink);text-align:center;font-family:var(--font-body)}
.gi-close{position:absolute;top:14px;left:14px;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--border-strong);background:transparent;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center}
.gi-close:hover{background:#1d2933;color:#b2e41b;border-color:#1d2933}
.gi-badge{position:absolute;top:-34px;left:50%;transform:translateX(-50%);width:68px;height:68px;border-radius:50%;background:#b2e41b;color:#1d2933;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(29,41,51,.25)}
.gi-title{margin:0 0 10px;font-family:var(--font-display);font-weight:600;font-size:var(--fs-h3);line-height:1.2;letter-spacing:-0.01em;color:var(--text-primary)}
.gi-sub{margin:0 auto 24px;max-width:none;font-size:16px;line-height:1.55;color:var(--text-secondary)}
.gi-sub span{display:block}
.gi-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;text-align:left;margin-bottom:22px}
.gi-field label{display:block;margin-bottom:6px;font-size:14px;font-weight:600;color:var(--text-primary)}
.gi-input{width:100%;height:50px;padding:0 14px;border-radius:12px;border:1.5px solid var(--border-strong);background:transparent;color:var(--text-primary);font:inherit;font-size:16px}
.gi-input:focus-visible,.gi-cc:focus-visible{outline:none;border-color:#b2e41b;box-shadow:0 0 0 3px #b2e41b}
.gi-input.is-bad{border-color:#ef476f}
.gi-phone{position:relative;display:flex;gap:8px}
.gi-cc{flex:0 0 auto;height:50px;padding:0 10px;border-radius:12px;border:1.5px solid var(--border-strong);background:transparent;color:var(--text-primary);font:inherit;font-size:16px;display:flex;align-items:center;gap:6px;cursor:pointer}
.gi-flag{display:block;width:24px;height:16px;border-radius:2px;overflow:hidden;flex:0 0 auto}
.gi-menu{position:absolute;top:56px;left:0;z-index:2;min-width:200px;margin:0;padding:6px;list-style:none;border-radius:12px;background:var(--surface-card);border:1.5px solid var(--border-strong);box-shadow:var(--shadow-ink);display:none}
.gi-menu.is-open{display:block}
.gi-menu li{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;cursor:pointer;font-size:15px}
.gi-menu li:hover,.gi-menu li:focus-visible{background:#1d2933;color:#b2e41b;outline:none}
.gi-err{margin:0 0 14px;font-size:15px;font-weight:600;color:#ef476f}
.gi-fine{margin:14px 0 0;font-size:13.5px;color:var(--text-muted)}
.gi-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.gi-thanks{padding:30px 0 14px}
.gi-thanks .gi-sub{margin-bottom:0}
@media (max-width:760px){.gi-row{grid-template-columns:1fr}.gi-modal{padding:58px 20px 24px}}
.hero-cta:hover .btn-arrow--down{transform:translateY(3px)}
.btn-arrow--down{display:inline-flex}
