/* Lean Swiss-inspired layout */
.gie-wrapper{--gap:16px;--border:#e5e7eb;--ink:#111;--muted:#6b7280;--accent:var(--gie-accent,#0a84ff);
--font:var(--gie-font,system-ui,-apple-system,"Helvetica Neue",Arial,Helvetica,sans-serif);
--size:var(--gie-size,16px);background:#fff;color:var(--ink);padding:clamp(16px,3vw,40px);max-width:980px;margin:0 auto;border:1px solid var(--border);
font-family:var(--font);font-size:var(--size)}
.gie-header h2{font-weight:800;letter-spacing:.02em;font-size:clamp(28px,4vw,40px);margin:0 0 4px}
.gie-sub{color:var(--muted);margin:0 0 24px;max-width:64ch;line-height:1.5}
.gie-gate{border:1px dashed var(--border);padding:12px;margin:12px 0 20px}
.gie-gate-grid,.gie-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap)}
.gie-field{grid-column:span 4}
.gie-field label,.gie-channels legend{display:block;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:#374151;margin-bottom:6px}
.gie-field input,.gie-field select{width:100%;padding:10px 12px;border:1px solid var(--border);background:#fff;font:inherit}
.gie-channels{border:1px solid var(--border);padding:10px 12px}
.gie-actions{display:flex;gap:12px;margin:18px 0 0;flex-wrap:wrap}
.gie-btn{appearance:none;border:0;background:#111;color:#fff;padding:12px 16px;font-weight:700;letter-spacing:.03em;cursor:pointer;text-decoration:none;display:inline-block}
.gie-btn.gie-secondary{background:#f3f4f6;color:#111}
.gie-btn.gie-outline{background:#fff;color:#111;border:1px solid #111}
.gie-results{margin-top:20px}
.gie-cards{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);margin-bottom:16px}
.gie-card{grid-column:span 4;border:1px solid var(--border);padding:16px}
.gie-card-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#374151;margin-bottom:6px}
.gie-card-value{font-size:clamp(26px,3.6vw,36px);font-weight:800}
.gie-card-note{color:#4b5563;margin-top:6px;font-size:.9rem;line-height:1.4}
.gie-cta{margin-top:8px}
.gie-note{color:var(--muted);font-size:.9rem}
@media (max-width: 960px){ .gie-field,.gie-card{grid-column:span 6} }
@media (max-width: 640px){ .gie-gate-grid,.gie-grid,.gie-cards{grid-template-columns:repeat(6,1fr)} .gie-field,.gie-card{grid-column:span 6} }