/* IMSO — Hub de Herramientas (/herramientas/) */
:root{
  --bg:#0F151C;--surface:#1A2430;--surface-2:#212D3A;--border:#2B3947;--border-soft:#22303D;
  --text:#EAF1F7;--text-muted:#9FB2C2;--text-dim:#66788A;
  --accent:#2FD8A8;--accent-dark:#1FAE86;--accent-soft:rgba(47,216,168,.12);--amber:#F2A93C;
  --font-display:'Space Grotesk',sans-serif;--font-body:'Inter',sans-serif;--font-mono:'IBM Plex Mono',monospace;
  --radius-l:16px;
}
*,*::before,*::after{box-sizing:border-box;}
body.imso-herr-hub{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased;}
.imso-herr-hub h1,.imso-herr-hub h2{font-family:var(--font-display);line-height:1.15;margin:0 0 .4em;letter-spacing:-.01em;}
.imso-herr-hub h1{font-size:clamp(2rem,4vw,3rem);font-weight:700;}
.imso-herr-hub h2{font-size:1.2rem;}
.imso-herr-hub p{color:var(--text-muted);margin:0 0 1em;}
.imso-herr-hub a{color:inherit;text-decoration:none;}
.hub-wrap{max-width:1080px;margin:0 auto;padding:56px 24px 72px;}
.hub-head{max-width:720px;margin-bottom:36px;}
.hub-back{font-family:var(--font-mono);font-size:.82rem;color:var(--text-dim);display:inline-block;margin-bottom:22px;}
.hub-back:hover{color:var(--accent);}
.hub-eyebrow{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin:0 0 .8em;}
.hub-lead{font-size:1.08rem;}
.hub-lead strong{color:var(--text);}
.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;}
.hub-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);
  padding:24px;transition:transform .14s,border-color .2s;}
a.hub-card:hover{transform:translateY(-3px);border-color:var(--accent);}
.hub-icon{font-size:1.8rem;margin-bottom:12px;}
.hub-card h2{margin-bottom:.3em;}
.hub-card p{font-size:.92rem;flex:1;}
.hub-cta{font-family:var(--font-mono);font-size:.85rem;color:var(--accent);font-weight:600;margin-top:8px;}
.hub-card.is-soon{opacity:.6;}
.hub-card.is-soon .hub-cta{color:var(--text-dim);}
@media (prefers-reduced-motion:reduce){a.hub-card:hover{transform:none;}}
