/* Ignis Fire Solutions – Core Styles */
:root{
  --bg:#0b0d10;           /* deep charcoal */
  --panel:#12161b;        /* slightly lighter */
  --ink:#e7edf3;          /* off‑white text */
  --muted:#d0d6dc;        /* lighter muted text for contrast */
  --accent:#ff5a1f;       /* safety orange */
  --accent-2:#3bc6ff;     /* cyan highlight */
  --line:#1e242c;         /* borders */
  --bs-secondary-color:#d0d6dc;   /* Bootstrap secondary text var override */
  --bs-secondary-rgb:208,214,220;
}

html,body{background:var(--bg);color:var(--ink);}
a{color:var(--accent-2);} a:hover{color:#8ee4ff;}
.navbar{background:rgba(10,12,14,.85);backdrop-filter:saturate(1.2) blur(6px);}
.btn-accent{background:var(--accent);border:none;color:white;}
.btn-accent:hover{filter:brightness(1.05);}
.btn-outline{border:1px solid var(--accent);color:var(--ink);}
.btn-outline:hover{background:var(--accent);color:#fff;}
.section{padding:80px 0;border-top:1px solid var(--line);}
.hero{
  position:relative;
  padding:120px 0 80px;
  background:radial-gradient(1200px 600px at 75% 0%, rgba(255,90,31,.15), transparent 60%),
             linear-gradient(180deg, #101419 0%, #0b0d10 60%);
}
.hero h1{font-weight:800;letter-spacing:.3px;}
.eyebrow{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2)}
.card{background:var(--panel);border-color:var(--line);}
.icon-hex{
  width:56px;height:56px;
  background:conic-gradient(from 180deg at 50% 50%, #1e242c, #151a20);
  clip-path:polygon(25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0 50%);
  display:grid;place-items:center;border:1px solid var(--line);
}
.spec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.spec{border:1px dashed var(--line);border-radius:10px;padding:14px}
.spec .k{color:var(--bs-secondary-color);font-size:.9rem;font-weight:500}
.spec .v{font-size:1.05rem;font-weight:600;color:var(--ink)}
.svg-frame{background:linear-gradient(180deg,#0e1216,#0a0c0f);border:1px solid var(--line);border-radius:14px;}
footer{border-top:1px solid var(--line);padding:40px 0;color:var(--muted)}
.badge-soft{background:rgba(59,198,255,.12);color:#bfefff;border:1px solid rgba(59,198,255,.25)}

/* TABLES: make all body cells bright, keep headers muted, and match borders */
.table{
  --bs-table-bg:transparent;
  --bs-table-striped-bg:#0f1318;
  --bs-table-striped-color:var(--ink);
  --bs-table-color:var(--ink);
  --bs-table-border-color:var(--line);
}
.table > :not(caption) > * > *{ color:var(--ink); border-color:var(--line); }
.table th.text-secondary{ color:var(--bs-secondary-color)!important; }

/* Cards and text helpers */
.cta{background:linear-gradient(180deg,#131a22,#0b0f13);border:1px solid var(--line);border-radius:16px}
.hr-dot{border:0;border-top:1px dashed var(--line);opacity:.8}
.text-secondary{color:var(--bs-secondary-color)!important;}
.card p{color:var(--bs-secondary-color);}

/* Brighten card titles */
.card h5{ color:var(--ink); font-weight:600; }
/* End of core styles */
